Max라는 숫까지 소수의 갯수를 찾아 속도를 측정하는 프로그램입니다
처음에는 자기자신까지 검사하는 시간이고
두번째는 Root를 사용하여 시간을 줄여봤습니다
c#root를 사용하지 않았을때입니다
c#루트를 사용했을 때 입니다 시간이 100배가량 차이가 납니다.
c++ 루트를 사용하지 않았을 때 입니다.
루트를 사용했음에도 c#과 같은 속도 변화가 없습니다 왜 그런지 알 수 있을 까요?
결론
같은 알고리즘을 사용해도 c++은 속도변화가 없는데 왜 그런지 알 수 있을까요>
저번에 올린거 왜 또ㅓ올리냐
어제밤에 정확한 답변을 못 받아서 낮에 계신 분들 께도 물어보고 싶어서 그랬습니다
http://m.dcinside.com/board/programming/1372053
c#은 인터프리터가아님. jit이나 aot처럼 머신 코드로 lowering해서 기계어로 돌리는거지. 그래서 fpu가 제공해주는 sqrt 연산자를 공유하기때문에 저런 결과가 나온 것처럼 보임
그리고 이런건 직접 가설세우고 확인해봐야함, 여러가지 원인이 있을텐데...
그딴 숫자 컴퓨터 씨피유한테는 시간 계산도 못할정도로 짧다
그리고 콘솔 찍으면서 시간 조금씩 다르니 그 다른 숫자인거지 진정한 계산 속도가 아니다 숫자 최대로 올리고 이거도 존나게 반복해라