크리에이티브 컴퓨팅 벤치마크

Creative Computing Benchmark

Ahl의 Simple Benchmark라고도 불리는 Creative Computing Benchmark는 다양한 기계에서 BASIC 프로그래밍 언어의 성능을 비교하기 위해 사용되었던 컴퓨터 벤치마크다.1983년 11월 Creative Computing 매거진에서 당시 유행했던 다수의 8비트 컴퓨터의 대책으로 처음 소개되었다.몇 달 동안, 그 목록은 0.01초 만에 그것을 작동시킨 Cray-1 슈퍼 컴퓨터가 1위를 차지하면서 실질적으로 모든 현대적인 기계들을 포함하도록 크게 확대되었다.[a]

크리에이티브 컴퓨팅 벤치마크는 그 시대의 세 가지 공통 벤치마크 중 하나였다.1980년대 초 미국에서 그것의 1차 경쟁은 1981년 9월의 바이트 체였고, 1977년 6월의 초기 러그/펠드만 벤치마크는 미국에서 잘 알려지지 않았지만, 영국에서 널리 사용되었다.

역사

1983년 11월 Creative Computing 호에서 설정한 원본 결과.

이 벤치마크는 1983년 11월 크리에이티브 컴퓨팅(Creative Computing)에서 "벤치마크 비교 테스트"라는 제목으로 처음 등장했다.[2]이 글에는 작가 데이비드 H. Ahl은 주로 루핑하는 성능인 BASIC 언어의 몇 가지 측면만을 시험했다고 진술하는데 조심스러웠다.그는 다음과 같이 말했다.

…여기 제시된 벤치마크 프로그램은 컴퓨터가 실제로 사용되는 방식을 대표하지 않는다; 그것은 성능의 몇 가지 측면만을 측정하고, 아무도 이러한 조치의 결과만을 근거로 컴퓨터를 구입해서는 안 된다.하지만, 그 결과는 흥미로운 비교 데이터를 제공한다.[2]

초기 결과는 Apple II, Commodore 64, 그리고 최근에 출시된 IBM Personal Computer를 포함한 그 시대의 일반적인 기계에 제공되었다.이 기계들의 대부분은 마이크로소프트 BASIC 주식의 일부 변형을 실행했고, 따라서 비슷한 시간을 2분 주문으로 제공했고, 16비트 PC는 단 24초만에 상위권에 근접했다.이 초기 스위트룸에서 가장 빠른 기계는 올리베티 M20으로 13초였고, 가장 느린 기계는 6분 58초 아타리 800에서 아타리 베이직이었다.[3]

발행 후 몇 달 동안, 그 잡지는 다른 플랫폼에 대한 결과로 넘쳐났다.그것은 한동안 정기적인 특집으로, 계속해서 증가하는 결과 목록과 함께 잡지 앞쪽에 눈에 띄게 배치되었다.3월까지 이 목록에서 가장 빠른 기계는 0.01초로 Cray-1이었고, 가장 느린 은 12.7일로 TI SR-50 프로그램 가능 계산기였다.[4]

벤치마크에는 몇 가지 문제가 있어 일반적 목적에 덜 유용했다.예를 들어, 이 시스템은 플랫폼마다 성능이 크게 다른 문자열 조작을 테스트하지 않았다.또한 루프 인덱스에 정수 변수를 사용할 수 있거나 공유 메인 메모리가 있는 기계에서 비디오 액세스를 끌 수 있는 등 다른 플랫폼에서 이용 가능한 "속도 업"을 이용하지 않았다.[b]이 제한사항들은 그 당시에 널리 논의되었다.[6]1983년 11월 기사는 "정확한 스톱워치"를 사용하여 실시간 시계가 없는 기계에서 프로그램 실행 시간을 정하도록 규정했다.더 빠른 기계에 적용하면, 이는 스톱워치를 작동하는 개인의 반응 시간에 크게 의존하는 시험 결과를 산출할 것이다.

그것의 마지막 출현은 183대의 기계에 대한 값을 포함한 1984년 5월호에 실렸다.이 이슈에는 이 시스템에 대한 많은 비판들이 마음에 새겨졌고 새로운 벤치마크 프로그램이 고안되고 있다는 메모가 포함되어 있었다.[7]그러나 그런 프로그램은 잡지에는 한 번도 등장하지 않았다.1985년 9월호에서 데이비드 알은 새로운 벤치마크 프로그램에 대한 편지에 "세 가지 새로운 벤치마크 테스트를 하는데 많은 시간을 할애했다...다른 결과나 더 나은 결과를 얻을 수 없었다."[8]

벤치마크는 이 날 이후에도 범용도구로 계속 사용되었으나 BASIC의 중요성이 줄어들면서 일반화되지 않게 되었다.[9]

코드

이것은 1983년 11월 판의 원본이다.[2]

1 'Ahl'의 간단한 벤치마크 테스트 2 라인 30 및 40에서, 일부 컴퓨터 3 '는 정확한 결과를 위해 RND(1)를 요구할 수 있다. 10 "정확성 무작위" 20 FOR N=1 TO 100:A=N 30 for I=1 ~ 10:A=SQR(A):R=R+RND(0):다음 I=1 ~ 10:A=A^2:R=R+RND(0):다음 I 50 S=S+A:다음 N 60 인쇄 ABS(1010-S/5);ABS(1000-R)

다음은 한 줄의 복합문 개수를 줄인 벤치마크 코드의 이후 버전에서 나온 것이다.[4][c]

10 ' Ahl's Simple Benchmark 20 FOR N=1 TO 100: A=N 30 FOR I=1 TO 10 40 A=SQR(A): R=R+RND(1) 50 NEXT I 60 FOR I=1 TO 10 70 A=A^2: R=R+RND(1) 80 NEXT I 90 S=S+A: NEXT N 100 PRINT ABS(1010-S/5) 110 PRINT ABS(1000-R)

메모들

  1. ^ 크레이는 Cray-1의 BASIC을 제작하지 않았기 때문에 이 버전이 어떤 언어로 작성되었는지는 명확하지 않다.[1]
  2. ^ 당시 8비트 기계는 대부분 CPU와 디스플레이 드라이버가 공유하는 단일 RAM 뱅크가 있어 버스 경합 문제로 성능이 30%나 느려졌다.디스플레이를 끄는 것은 이 벤치마크처럼 컴퓨팅에 바인딩된 프로그램을 개선하는 일반적인 방법이었다.[5]
  3. ^ 모든 줄에 대해 줄인 줄 길이가 40자 미만으로 감소할 가능성이 있음.원본에서 30행은 43자 길이다.

참조

인용구

  1. ^ CRAY-1 Computer Operating System Handbook (PDF). Cray Computer. September 1981.
  2. ^ a b c Ahl 1983, 페이지 259.
  3. ^ Ahl 1983, 페이지 260.
  4. ^ a b Ahl 1984, 페이지 7.
  5. ^ 윌킨슨 1985, 페이지 140.
  6. ^ 윌킨슨 1985, 페이지 139.
  7. ^ Ahl 1984, 페이지 6.
  8. ^ Ahl, David (September 1985). "Input/Output". Creative Computing. p. 6.
  9. ^ Hart, Glenn (May 1985). "Microsoft BASIC 2.0 for the Mac". Creative Computing. pp. 46, 48, 51–52.

참고 문헌 목록