C/C++이 perl보다 느린 이유
malloc관련 함수가 느리기 때문으로 추측
perl에서 사용하는 메모리 관리 기법이 뛰어나다고 생각됨.
테스터 색히가 java테스트를 그지 같이 해놓구 비교표 수정을 안했음.
자바는 이걸 참고
exec.tm.sec str.length allocated memory:free memory:memory used
0 0 32320:32103:216
2sec 256kb 32320:29420:2899
9sec 512kb 32320:29033:3286
21sec 768kb 32320:28250:4069
38sec 1024kb 32320:26692:5627
59sec 1280kb 32320:23612:8707
85sec 1536kb 32320:22116:10203
116sec 1792kb 32320:23647:8672
153sec 2048kb 32320:22101:10218
194sec 2304kb 32000:14067:17932
240sec 2560kb 32000:12571:19428
292sec 2816kb 32192:14283:17908
348sec 3072kb 32192:12713:19478
410sec 3328kb 32064:14356:17707
477sec 3584kb 32064:12827:19236
549sec 3840kb 32128:14615:17512
626sec 4096kb 32128:13095:19032
더 자세한 내용은 여기를 참조.
문자열 하나만으로 모든걸 평가할 수는 없는 법이지.
문자열 처리는 굉장히 중요한 부분임. 특히 java는 웹쪽에서도 많이 쓰는데 더 중요하지
웹에서 문자열 처리하는게 HTML 쏴 주는거 외에 그리 많은가?? 그리고 자바에서 누가 String을 그냥 + 해서 쓰나, Builder나 Buffer써서 하지.
테스트에서도 StringBuilder 써서했음
설마 무식하게 + 써서했겠냐?
역시 프로그래밍 초고수다운 조사결과물이다
근데왜 sqlite를 가지고 노느 짤에서는 regex 를 ^[^w]+.dcinside.com 왜씀 (어짜피 틀린 regex인데)? 그냥 where에다 박는게 문자열처리하는것보다 빠르겠다
카일 자꾸 헛소리할래?
처음에 String으로 짜서 나중에 Builder로 짠 결과를 보여주는데 두 결과가 확연히 다른데??
첫 소스보면 그냥 String + 임
아 비교표 업데이트를 안하고 그냥 밑에 추가만 시켜놨구나 시발 ㅋㅋㅋ
그래도 이걸 보면 문자열처리는 Perl이 갑이다라는걸 다시 한 번 느낄 수 있었다. 그리고 자바는 이제 성능으로 까일만한 대상이 아니다.
근디 이런게 객관적인 자료는 아닌거 같구, 그냥 가십거리 같음
문자열 처리는 예전부터 지금까지 Perl이 갑이었다. 자바는 초기버전때 String끼리 연산하는 부분에서 문제가 있어서 느렸지만 지금은 많이 나아졌다.
OpenJDK보다는 Oracle의 공식 버전이 낫지. 문제는 JDK보다는 런타임인데 Oracle JRE에 비해 IcedTea가 조낸 느려 터졌다 --;
C가 갑이네 시발
? // 대신에 불편돋겠지 ㅜ, perl은 편한데 빠른거