Main_pureMD5 : hackage에 있는 순수 하스켈로 구현된 MD5
Main : 자체구현
Main_llvm : 자체구현 + llvm backend
https://github.com/damhiya/dc-github-ps/blob/master/MD5/Crypto/Hash/MD5.hs
http://hackage.haskell.org/package/pureMD5-2.1.3/docs/Data-Digest-Pure-MD5.html
template haskell 안배우고 버티고 있었는데 이번 기회에 좀 찾아보고 적용해봄.
loop unrolling 적용했더니 시간이 상당히 줄어서 llvm 최적화 까지 하면 hackage에 있는 pureMD5 능가함. (pureMD5는 llvm 적용 안되있긴 함.)
pureMD5 구현 봤는데 디펜던시도 많고 죄다 하드코딩해서 킹찍히 내 코드가 가독성 더 좋음 ㅋㅋㅋ
md5sum 하고 성능차는 약 1.6375배 남
하스켈은 모르는데 개추는 일단 드렸읍니다
LLVM!!!
하스켈 자체 성능은 빠른편임 ? 함수형은 잘 몰라 궁금하네
포텐셜 자체는 괜찮은것 같은데, 로우레벨 언어처럼 대충 써도 졸라 빠르지는 않음.
특히 lazy eval 때문에 적절하게 strict eval 하라고 힌트를 줘야 성능이 잘 나옴
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/ghc-gcc.html
이거보면 fasta 에서는 C 이기는데 나머지는 쳐발림 ㅋㅋㅋㅋ
와 님 진짜 진성 덕후네용. 친절하기까지하네.. 굳
항상 하스켈의 보급을 위해 노력하고 있음
아니 ㄹㅇ 장난 아니네 존경합니다 와 - dc App
넌 「진짜」다 - dc App