| [ CnUnix ] in KIDS 글 쓴 이(By): zzapuno (정내훈) 날 짜 (Date): 2002년 3월 10일 일요일 오전 02시 25분 26초 제 목(Title): Re: x86 CPU instruction 속도가 궁금해요 > > CPU instruction마다 몇 ns씩 걸리는지 cache miss때 얼마나 시간이 더 > 걸리는지 그런 정보들 어디에 가면 있는지 알고싶습니다. 좀 도와주세효 > ㅎㅎ ^^; 한 100ns정도라도 아껴보려구요. > instruction당 걸리는 CPU clock수는 intel홈페이지에 있는 프로세서 매뉴얼에 적혀 있으므로 clock수/(프로세서 클럭 주파수)*1000000000하면 ns가 나옵니다. 하지만 펜티엄부터 병렬수행(Superscalar), 비순차실행(Dynamic Execution), 예측수행(Speculative Execution)등등 오만가지 꽁수들을 부려대고 있기 때문에 실제 얼마나 시간이 걸리는지는 실제 프로그램을 수행해 보지 않고는 알기 힘듦니다. 또한 초기조건을 엄격하게 주지 않으면 같은 코드들도 경우에 따라 다른 수행시간을 보일수도 있습니다. 캐시미스의 경우는 프로세서 매뉴얼 뒷부분의 timing chart를 보시면 대충 나와 있지만 이것도 메인보드를 뭘쓰고 바이오스 세팅을 어떻게 하느냐에 따라 걸리는 시간이 달라집니다. 이것도 실제 재보는 수 밖에는 없습니다. cache flush instruction과 processor clock reference instruction을 조합해서 간단한 프로그램을 짜서 재보시기 바랍니다. nhjung |