일단 내가 작성한 테스트 코드 링크부터 건다. http://ideone.com/94OeNh
나도 너랑 똑같이 65536 바이트 기준으로 하고 모든 테스트는 10,000번씩 시행 되었다.
[참고사항]
>>> TsuTsu는 내 결과고
>>> CodeSafer 는 너의 원본 코드에서 테스트를 위해서 약간 변경한것의 결과
>>> CodeSafer Remove MS_MEMCOPY 는 너의 원본소스에서 memcopy호출하는 부분을 제거한 결과임
Correct는 기본 memmove 의 결과와 비교해서 같은지의 여부를 나타내는 거임
MS_MEMCOPY_CALLED 는 해당 코드 내부에서 기본 memcpy를 실행했는지의 여부를 나타냄.
[ Test Case 0 32bit ]
Source Align : 0 Destination Align : 0
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 32772 Average Clock 33892
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 28352 Average Clock 30219
>>> CodeSafer Remove MS_MEMCOPY
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 19920 Average Clock 21005
이 결과는 소스와 데스티네이션 모두 얼라인 맞춰진 상황에서의 결과 값이다.
>>> CodeSafer가 나보다 빠른 이유는 니 말대로 MS의 최적화 된 구현을 그대로 사용하고 니 코드는 아무것도 한게 없기 때문임.
>>> CodeSafer Remove MS_MEMCOPY 도 나보다 빠르다. 이건 니가 수동으로 루프를 풀었기 때문임.
니 코드 보니까 소스 얼라인이 안 벗어 날때는 무조건 비트 연산자 사용 안하고 그냥 루프만 풀어 놨더라.
제대로 할려면 소스가 안벗어나도 데스티네이션이 벗어 났으면 비트연산자를 사용하도록 구현 했어야지.
그리고 내가 비트 연산자 써서 읽기 쓰기 모두 얼라인 맞춰서 나보다 빠르게 작동하는거 보여 달랬지
언제 수동으로 루프 풀라고 함? 루프는 왜 쳐푼거임? 누가 할줄 몰라서 안하는줄 아냐? 존나 노가다라서 안하는 거지 병신아.
[ Test Case 1 32bit ]
Source Align : 0 Destination Align : 1
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 35556 Average Clock 36212
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 44024 Average Clock 45711
>>> CodeSafer Remove MS_MEMCOPY
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 20332 Average Clock 21043
[ Test Case 2 32bit ]
Source Align : 0 Destination Align : 2
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 35576 Average Clock 35854
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 43936 Average Clock 47848
>>> CodeSafer Remove MS_MEMCOPY
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 20428 Average Clock 21314
위의 두 테스트 케이스는 데스티네이션 얼라인만 어긋난 경우다.
여전히 니가 루프를 수동으로 풀었기 때문에 빠른 경우이다.
[ Test Case 3 32bit ]
Source Align : 1 Destination Align : 0
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 40612 Average Clock 42742
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 43060 Average Clock 43624
>>> CodeSafer Remove MS_MEMCOPY
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 43096 Average Clock 43410
자 이번에는 소스 얼라인만 벗어난 경우를 보자. 니 소스 보니까 소스 얼라인 1벗어 날때 비트연산자를 사용하는데 까지구현해 놓았던데
근데 결과는? 나보다 느린데?
소스 얼라인이 2이상 벗어나는 경우는 니가 아직 구현 안해서 Correcnt = false로 나오더라.
[ Test Case 4 32bit ]
Source Align : 1 Destination Align : 1
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 32788 Average Clock 32919
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 52756 Average Clock 54540
>>> CodeSafer Remove MS_MEMCOPY
Correct : False MS_MEMCOPY_CALLED : False
Min Clock 43320 Average Clock 44156
[ Test Case 5 32bit ]
Source Align : 1 Destination Align : 2
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 35588 Average Clock 35977
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 67616 Average Clock 71715
>>> CodeSafer Remove MS_MEMCOPY
Correct : False MS_MEMCOPY_CALLED : False
Min Clock 43460 Average Clock 44168
그리고 이 두 결과는 둘다 얼라인 벗어난 경우임.
여전히 니가 쳐 느리고 심지어 Correct=False임
>>> CodeSafer 의 Correct = True이지만 이건 그냥 기본 memcpy호출된 결과 이므로 인정 안함.
너는 http://gall.dcinside.com/board/view/?id=programming&no=504885&page=2 이 글에서
1,2번 결과로 소스가 얼라인된 상태를 테스트 하고 결과를 올렸음.
이때는 비트 연산자는 쳐 쓰지도 않고 니가 수동으로 루프를 쳐 풀었으니까 당연히 니가 더 빠름.
3번에서 64비트 환경에서 소스와 데스티네이션 모두 벗어난 경우 니가 더 빠르다고 했는데. 과연 그럴까?
나도 64비트에서 실험해봄.
[ Test Case 6 64bit ]
Source Align : 1 Destination Align : 2
Test Count : 10000 Copy Length : 65536
>>> TsuTsu
Correct : True MS_MEMCOPY_CALLED : False
Min Clock 36372 Average Clock 36710
>>> CodeSafer
Correct : True MS_MEMCOPY_CALLED : True
Min Clock 31672 Average Clock 32459
>>> CodeSafer Remove MS_MEMCOPY
Correct : False MS_MEMCOPY_CALLED : False
Min Clock 21732 Average Clock 21995
병신 Correct : False 를 봐라 니꺼는 제대로된 결과도 쳐 못내고 있음. ㅋㅋㅋㅋㅋ
제대로 작동하는지 확인도 안해보고 어디서 사람을 호구로 쳐보고 속일려고 드냐???
[네줄 요약]
1. 내가 코세에게 비트연산자를 사용하여 소스와 데스티네이션 두개다 얼라인 맞춰서 나보다 더 더 빠른거 보여 달라고함.
2. 하라는건 안하고 루프를 손으로 쳐풀고 앉아있음.
3. 비트 연산자 적용 되는 부분은 나보다 쳐 느림.
4. 자기가 더 빠르다고 주장하는 64비트에서는 같은 조건으로 테스트 했는데 제대로 작동조차 안함. 그리고 32비트에서도 제대로 결과 못 내놓음.
나를 호구로 보고 속이려고 들었거나. 애 자체가 멍청한듯.
전 코세님이 코드 공개할때까지 판단은 일단 보류하고 기다려 볼랍니다.
아직 완성된거 아니라고 했으니까요
짝짝짝~ 훌룡하십니다.
완성된것도 아닌데 속도 비교한것 자체가 에러긴 했죠. 오류검증과정도 없이요.
저 새끼가 다시는 재기하지 못하도록 아작을 내 주십시오.
코세 예전에 결과 엉터리로 나오던 것도 속도 비교하면서 최적화 드립치다 털린적있는데 무슨 수를 써서라도 정신승리로 마감하더라 이번에도 쓰러지지 않을거임 ㅋㅋ
여기 프갤러들은 저 새끼의 기고만장에 환멸을 가지고 있습니다. 실력도 좃도 없는게 제동 걸 사람이 없다고 안하무인에다가 오만방자하기 까지, 게다가 인간성까지 약자에겐 무한 잔인성을 가진 인간도 아닙니다.
아주, 확실하게 확인사살까지 해 주시기를 간곡히 바랍니다.
싸울려면 다음팟 방파서 스카이프전화걸고 누가 이기는지 싸워 난 앉아서 팝콘먹고 보면되니깤ㅋㅋㅋㅋㅋㅋㅋ
근대 코세가 확실히 최적화 드립은 쳤다 확실히 기억한다 ㅋㅋㅋ 최적화 ㅋㅋㅋ
L 자세히 보면 허당일 수도
님의 4줄 요약을 보니, 저 새끼가 허접이라는게 만천하에 드러나는군요. 지난날의 울분과 오늘 복수를 생각하니, 감격하여 눈물이 다 나올지경입니다. 끝까지, 집요하게, 저 새끼가 다른 프갤러에게 했던 고통의 반의 반 이라도 느끼게 해 주십시오. 감사합니다.
왜 수행시간을 가장 빠른 수행시간으로 따지죠? 평균으로 따져야 하는 거 아님?
@q2 : 흉은 ㅉㅉ랑 좀 다르지 않음? ㅉㅉ도 코세가 완전 허당이라고 하진 않을 것 같은데.
딱봐도 아는건 많아보이는데;;
우물안개구리//그래서 둘다 표기 했잖아용.
캬 코세 귀신같이 이 글에 댓글 없네 ㅋㅋㅋㅋ
에라이 븅신아.
점심먹으러 나와서 길게 못쓰지만 새글로 씀.
http://gall.dcinside.com/board/view/?id=programming&no=505067