Sun CoolThreads 기술에 대한 귀하의 경험은 어떻습니까?

StackOverflow https://stackoverflow.com/questions/57902

  •  09-06-2019
  •  | 
  •  

문제

내 프로젝트에는 회계연도가 끝나기 전에 지출할 돈이 있고 몇 년 동안 사용해 온 Sun-Fire-V490 서버를 교체하는 것을 고려하고 있습니다.우리가 보고 있는 옵션 중 하나는 쿨스레드 기술.내가 아는 것은 Sun 마케팅뿐인데, 이는 100% 편견이 아닐 수도 있습니다.실제로 이 중 하나를 가지고 놀아본 사람이 있나요?

우리는 스레드나 가상 머신을 많이 사용하지 않고 코드를 개조하는 데 많은 시간을 소비할 수 없기 때문에 이것이 우리에게 가치가 없을 것이라고 생각합니다.우리는 수많은 프로세스를 생성하지만 CoolThreads가 거기에 도움이 될지는 의문입니다.

(그렇습니다. 돈은 보너스나 다른 것에 쓰는 것이 더 나을 것입니다. 그러나 그런 일은 일어나지 않을 것입니다.)

도움이 되었습니까?

해결책

폭로:나는 썬에서 일해요 (그러나 클라이언트 소프트웨어의 엔지니어로서).

이러한 머신을 사용하기 위해 반드시 멀티스레드 코드가 필요한 것은 아닙니다.여러 프로세스가 있으면 여러 코어에서 여러 하드웨어 스레드를 사용하게 됩니다.

이전 T1 프로세서(T1000 및 T2000 상자)에는 FPU가 하나만 있었고 부동 소수점이 약 1%를 넘는 작업에는 실제로 적합하지 않았습니다.최신 T2 및 T2+ 프로세서에는 코어당 FPU가 있습니다.아마도 대규모 부동 소수점 크런칭에는 아직 적합하지 않지만 훨씬 더 훌륭합니다.

(메모:하이퍼스레딩 기술은 Intel의 상표입니다.Sun에서는 CMT(Chip MultiThreading)라는 용어를 사용합니다.)

다른 팁

IIRC Coolthreads 기술은 성능 향상을 위해 단순히 클럭 속도를 높이는 것이 아니라 이제 하이퍼스레딩을 사용하여 하나의 칩에 많은 프로세서를 효율적으로 제공하는 다중 코어 프로세서를 검토하고 있다는 사실을 나타냅니다.전반적으로 사용 가능한 처리 용량은 더 높지만 예상할 수 있는 추가 전력 및 에어컨 요구 사항이 없습니다(따라서 시원함).그 유용성은 확실히 당신이 무엇을 실행할 계획인지에 달려 있습니다.다중 스레드 코어로 Apache를 실행하는 경우 개별 CPU 코어에서 개별 응답 스레드를 실행할 수 있으므로 Apache가 마음에 들 것입니다.단순히 단일 스레드 프로세스를 실행하는 경우 단일 CPU 상자에 비해 약간의 성능 향상을 얻을 수 있지만 그다지 좋지는 않습니다(mod_perl/mod_python CGID가 아닌 구식 CGID 프로세스는 여전히 CPU를 약간 공유합니다).응용 프로그램이 상자에서 최대로 실행되는 단일 스레드 프로세스로 구성된 경우 동일한 속도로 실행되는 단일 코어 CPU에서는 거의 개선되지 않습니다.

베드로

편집하다:

아 그리고 벤치마크용입니다.우리는 서버 팜에 있는 T2000을 현재 V240과 비교했습니다(기억이 나지 않는 V480이었을 수도 있음). T2000은 성능에 대한 OS 조정 없이 실시간 테스트에서 이전 상자 중 12~13개의 로드를 수행했습니다.내가 말했듯이 Apache는 그것을 좋아합니다 :-)

우리는 마지막 시스템으로 Sun Fire T2000을 사용했습니다.상자 자체는 처리 능력 측면에서 우리의 용량 요구 사항을 훨씬 초과했습니다.우리의 결정은 더 낮은 전력 소비와 공간 요구 사항을 기반으로 이루어졌습니다.우리는 동일한 시스템에서 WebSphere 6, Oracle 10g 및 SunONE Directory 서버를 성공적으로 실행했습니다.

내 정보는 약간 오래되었을 수 있습니다(이 서버는 2년 전에 마지막으로 사용됨). 그러나 제가 기억하는 한 가지 큰 문제는 단일 CPU의 모든 코어가 모두 같은 FPU 단위, 따라서 코드에서 부동 소수점을 많이 수행했다면(우리는 GIS를 수행 중이었습니다) FPU는 막대한 병목 현상이 발생했으며 많은 수의 스레드로 인해 많은 이점을 얻지 못했습니다.

병렬성이 높은 프로세스의 경우 이러한 기계(예: t1000/t2000)는 비용 대비 성능이 뛰어납니다.나는 지금까지 약 18개월 동안 Oracle을 실행해 왔고 훌륭하게 작동합니다.

작업이 단일 스레드/단일 프로세스인 경우 고속 듀얼/쿼드 코어 인텔 시스템을 사용하는 것이 더 나을 것입니다.

애플리케이션에 스레드/프로세스가 많다면 이러한 머신이 적합할 것입니다.

무엇보다도 Sun은 평가를 위해 60일 동안 하나를 보낼 것입니다. 우리는 이를 약속하기 전에 2개의 t2000을 얻었고 최근에 4개의 t1000을 추가로 구입했습니다.

어젯밤에 우리의 핵심 프로세스가 멀티스레드가 아니라는 사실을 깨달았습니다. 하지만 문제의 컴퓨터에는 다중 스레드가 있는 시스템 프로세스가 많이 있습니다.특히 NFS 서버 역할을 합니다.수백 개의 프로세스를 실행하면 모든 코어의 이점도 얻을 수 있을 것 같습니다.

먼저 테스트할 데모 장치를 구할 수 있는지 알아보겠습니다.

Sun은 모든 사람들에게 모든 것을 제공하기 위해 Niagra 기계를 판매해 왔습니다.그들은 자신의 자리를 가지고 있습니다:웹 서비스가 최고의 배포입니다.우리는 일부 T2000에서 Oracle을 실행했으며 고도로 병렬화된 작업에 잘 작동했습니다.그러나 기계는 단일 트레드 작업에서 실패하며 성능이 다소 나쁩니다.부동 소수점 작업을 해야 한다면 다른 곳을 찾아보세요.코어당 FPU가 있는 최신 칩조차도 부적절합니다.또한 이러한 기계는 오랫동안 엔터프라이즈급 성능을 발휘할 수 없으며 안정성 문제도 있었습니다.멀티 코어 기술은 실체보다는 과장된 것입니다.이에 대한 Sandia National Lab의 연구에서는 4~8개의 코어가 유용성의 최고 수준이며 16개의 코어 칩이 듀얼 코어 칩과 동일한 처리량을 갖는다는 사실을 발견했습니다.따라서 16코어 칩은 많은 돈을 낭비하는 것입니다.또한 코어 수가 증가하면 열 벽으로 인해 클럭 속도가 감소해야 합니다.대부분의 제조업체는 아마도 메모리 기술이 향상될 때까지 쿼드 코어 칩에 안주할 것입니다(16개 코어에 메모리를 공급할 수 없으며 대부분의 코어가 정지됨).마지막으로 Sun의 혼란을 고려하면 다른 곳을 찾는 것이 더 나을 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top