3. run.sh
파라미터 3개 필요
실행 파일명, 출력 파일명, 실행 반복 횟수
EXECUTABLE_FILE OUTPUT_FILE
REPEAT_COUNT
4. 최종 결과 비교 – 100MB + 100MB
Template 최종 버전
실행 시간 평균 130.276058 sec 46.400518 sec
성능
(최종 버전) / (Template)
0.356171
5. 성능을 올리기 위해 한 일들…
1. 동적할당
- 한 파일당 100MB까지 테스트 완료.
- 100MB 이상도 가능하지만 코드에서는 최대 100MB로 제한
- Merge 할 파일의 파일 크기를 읽어서 크기만큼 동적 할당
2. XOR 연산자를 이용한 문자열 뒤집기 함수
3. strtok_r()로 문자열 파싱
- fread()로 파일의 모든 내용을 동적할당한 메모리로 이동
- ‘n’으로 문자열 파싱