최근에 Mike Pound가 4 개의 그래픽 카드 (정확히 말해서 Titan X)를 가진 회사의 슈퍼 컴퓨터를 자랑하는 암호 에 관한 훌륭한 Computerphile 비디오를 보고있었습니다 .
수치 시뮬레이션 애호가로서 저는 시뮬레이션 작업만을위한 데스크탑을 구축하는 것을 꿈꿉니다. Mike Pound가 왜 프로세서가 아닌 그래픽 카드로 컴퓨터의 계산 능력을 측정합니까? 컴퓨터를 제작하는 경우 어떤 항목에 더 관심을 가져야합니까?
최근에 Mike Pound가 4 개의 그래픽 카드 (정확히 말해서 Titan X)를 가진 회사의 슈퍼 컴퓨터를 자랑하는 암호 에 관한 훌륭한 Computerphile 비디오를 보고있었습니다 .
수치 시뮬레이션 애호가로서 저는 시뮬레이션 작업만을위한 데스크탑을 구축하는 것을 꿈꿉니다. Mike Pound가 왜 프로세서가 아닌 그래픽 카드로 컴퓨터의 계산 능력을 측정합니까? 컴퓨터를 제작하는 경우 어떤 항목에 더 관심을 가져야합니까?
답변:
Mike Pound는 분명히 그래픽 카드의 계산 능력을 CPU의 계산 능력보다 높게 평가합니다.
왜? 그래픽 카드는 기본적으로 모두 병렬로 실행되는 MANY 단순화 된 프로세서로 구성됩니다. 일부 시뮬레이션 작업의 경우 그래픽 카드에서 사용 가능한 수천 개의 코어에서 많은 계산을 쉽게 병렬화하고 병렬로 처리하여 총 처리 시간을 줄일 수 있습니다.
더 관심을 가져야 할 항목은 무엇입니까? 실제로 관심있는 작업량과 그래픽 카드에서 사용하기 위해 작업량이 병렬화되는 방법에 따라 달라집니다. 작업량이 엄청나게 평행 한 간단한 계산 세트이고 소프트웨어가 사용 가능한 그래픽 카드를 활용하도록 작성된 경우 더 많은 그래픽 카드는 더 많은 CPU (달러에 비해 달러)보다 훨씬 큰 성능 영향을 미칩니다.
https://developer.nvidia.com/cuda-zone (및 자세한 내용은 Google cuda nvidia) 을 확인하십시오 . cuda 아키텍처와 고급 그래픽 카드는 데스크탑 슈퍼 컴퓨터에 널리 사용됩니다. 일반적으로 기성품 화이트 박스 구성 요소를 사용하여 $ 10K (usd) 미만의 몇 개의 Floflo 박스를 구성 할 수 있습니다.
그래서...
수치 시뮬레이션 애호가로서 저는 시뮬레이션 작업만을위한 데스크탑을 구축하는 것을 꿈꿉니다.
... cuda는 도시에서 가장 멀리 떨어져있는 최고의 게임입니다. 아마도 /scicomp// 또는 다른 종류의 stackexchange 웹 사이트 에서 다시 문의하십시오 .
(여기서, 우리가 여기서 대규모 병렬 프로그래밍에 대해 이야기하고 있다는 생각에 익숙하다고 가정하므로 알고리즘 설계의 패러다임에 익숙해 져야 할 수도 있습니다.)
컴퓨터를 제작하는 경우 어떤 항목을 더 신경 써야합니까?
실용적인 관점에서 당신은해야 아마 는 GPU에 비해 업그레이드의 상대적 어려움이 주어진 마더 보드와 CPU에 대한 관심이 꽤 지불합니다. 구매 후 4 개의 GPU를위한 공간이 없거나 GPU를 모두 바쁘게 유지할만큼 충분한 프로세서가 없다는 것을 발견하기에는 끔찍한 시간입니다.
또한 GPU 성능은 단 정밀도 FLOP에서 가장 많이보고되며 배정도를 위해 상당히 떨어집니다. 시뮬레이션에 추가 정밀도가 필요한 경우 광고 속도보다 훨씬 낮아집니다.
소프트웨어 엔지니어링 경쟁
소프트웨어 관점에서 Von Neumann 병목 현상과 프로그래밍 모델이라는 두 가지 주요 문제가 있습니다. CPU는 메인 메모리에 대한 액세스가 상당히 뛰어나며 GPU는 훨씬 빠른 메모리를 내장하고 있습니다. GPU 안팎으로 데이터를 이동하는 시간이 모든 속도 승리를 완전히 무효화한다는 것은 알려진 바가 없습니다. 일반적으로 CPU는 많은 양의 데이터에 대한 적당한 계산의 승자이며 GPU는 적은 양에 대한 무거운 계산에 뛰어납니다. 이 모든 것이 우리를 프로그래밍 모델로 가져옵니다.
높은 수준에서 문제는 고대의 명예 MIMD / SIMD 토론입니다. 다중 지시 / 복수 데이터 시스템은 일반 및 상업용 컴퓨팅에서 가장 큰 승자가되었습니다. SMP를 포함하는이 모델에는 각각 자체 명령 스트림을 실행하는 여러 프로세서가 있습니다. 프랑스 주방과 동등한 컴퓨터로, 소수의 숙련 된 요리사가 비교적 복잡한 작업을 완료하도록 지시합니다.
반면 단일 지시 / 복수 데이터 시스템은 마스터 컨트롤러의 지시에 따라 책상에 연결된 점원으로 가득 찬 방이 더 닮았습니다. "모두 3 번과 5 번 줄을 추가하세요!" ILLIAC 및 일부 "미니 슈퍼"시스템에서 순수한 형태로 사용되었지만 시장에서는 사라졌습니다. 현재 GPU는 가까운 사촌이며 더 유연하지만 동일한 일반적인 철학을 공유합니다.
간단히 요약하면 다음과 같습니다.