하드 디스크 속도는 어떻게 찾을 수 있습니까? 나는 System.IO.File.Copy
을 사용할 수 없으며 하드 디스크 속도를 얻기 위해 타이머를 사용한다. 왜냐하면 파일을 캐싱 한 후에는 속도가 실제로 실시간보다 높기 때문이다.하드 디스크 속도는 어떻게 찾을 수 있습니까?
대신 무엇을 할 수 있습니까?
하드 디스크 속도는 어떻게 찾을 수 있습니까? 나는 System.IO.File.Copy
을 사용할 수 없으며 하드 디스크 속도를 얻기 위해 타이머를 사용한다. 왜냐하면 파일을 캐싱 한 후에는 속도가 실제로 실시간보다 높기 때문이다.하드 디스크 속도는 어떻게 찾을 수 있습니까?
대신 무엇을 할 수 있습니까?
파일을 기록한 후 후속 읽기 속도가 예상보다 훨씬 높은 이유는 파일이 기록 될 때 파일이 디스크 시스템 캐시에 OS에 의해 캐시된다는 것입니다. 후속 파일 읽기는 실제로 디스크가 아닌 메모리에서 읽혀집니다.
FILE_FLAG_NO_BUFFERING 플래그 활용하여 OS 디스크 캐시를 우회하기위한 솔루션을 제공하는이 코드 프로젝트 문서를 참조하십시오 : OS 디스크 캐싱을 피하기 위해 상황에
http://www.codeproject.com/KB/files/unbuffered.aspx
이 솔루션을 사용할 수 있습니다, 그리고 그래서 "진짜"디스크 속도를 얻으십시오.
"실시간"에 관해 묻습니다. 실제 캐시에서는 사용 중이므로 어떤 문제도 보이지 않습니다. 일부 File.Copy 또는 다른 간단한 테스트 대신 프로그램을 실행하기 위해 일부 스크립트 또는 유사한 도구를 사용하려고 할 수 있습니다.
하지만 진짜 질문은 무엇입니까? 나는. 일부 디스크가 충분히 빠르지 않거나 프로그램의 속도가 빠르지 않은지 알아 내려고 노력하고 있습니까?
어떤 속도가 필요합니까? 독서? 쓰다? 잇달아 일어나는? 무작위? – Oded
쓰기 속도? 가능하면 FileCopy? – pedram