Scientific Computing 및 HPC의 Mac OS 상태


17

OS X의 시작으로, 과학 컴퓨팅 및 HPC 응용 프로그램을위한 플랫폼으로서 Mac OS에 대해 적어도 Mac 세계 (당시 과학적 컴퓨팅에 가까운 곳은 없었 음)에는 많은 허브가있는 것 같았습니다.

XGrid는 즉시 사용 가능했으며 Virginia Tech에는 멋진 Mac 기반 컴퓨팅 클러스터가 있었고 Stanford는 멋진 일 등을하고있었습니다.

그러나 최근에는 상황이 조용했습니다. Macresearch.org 사이트는 본질적으로 스패머 좀비로 가득한 유령 도시이며 XServe는 죽었으며 수많은 마케팅 자료 등이 인텔 이전 프로세서 영역에서 온 것으로 보입니다. 그러나 XGrid는 여전히 존재하고 전체 * nix OS의 토대가 있으며, 플랫폼은 Python, R 및 일부 새로운 언어에서 제대로 지원되는 것으로 보입니다.

그래서, 나보다 이것에 대해 더 많이 알고있는 사람들로부터 ... OS X는 얼마나 비쌉니까? 과학 컴퓨팅을 위해 클라이언트 측 컴퓨터를 사용할 수 있습니까? 서버 / 클러스터 등으로 사용하고 있습니다. XGrid 또는 단순히 참신 응용 프로그램과 같은 것을 통해?


다운 투표자는 왜 다운 투표를했는지 설명해 주시겠습니까?
Geoff Oxberry

Meh. 이것은 좋은 서브 제트, 나쁜 주관적 판매 에 끔찍한 것이 아니지만 여전히 나를 위해 아무것도하지 않습니다. 내가 걱정하는 한 대답은 : 그것은 기본적으로 유닉스이지만 UI가 중요하지 않은 곳에서는 너무 많은 비용이 듭니다.
dmckee

@ dmckee : 그래, 나는 그것을 볼 수 있습니다. 많은 사람들이 당신의 의견에 동의 할 것입니다. 저에게는 하드웨어 장애에 지쳐서 문제가 그렇게 간단하지 않았으며, 그래도 여전히 가상 머신에서 Linux를 실행합니다. 워크 플로를 좋아하는 사람들이 대부분 OS X 인 것을 경험했기 때문에 틈새 커뮤니티에 대한 합리적인 질문이라고 생각합니다. 또한 Computational Science가 몇 가지 질문을 더 많이 사용할 수 있다고 생각하며 여러 관점에서 응답하면 사람들이 과학 컴퓨팅에 사용하는 도구에 대한 아이디어를 얻는 데 도움이 될 것입니다.
Geoff Oxberry

@ dmckee 그리고 나는 애플이 구워낸 것들 중 일부가 그들의 OS를 사용해야하는 활기차고 설득력있는 이유를 낳지 않았다는 올바른 대답을 고려할 것입니다.
Fomite

이 질문은 또한 하드웨어 문제와 ServerFault와 구별 될 수있는 "과학 컴퓨팅 수행"유형의 질문 중 일부를 탐색하려는 시도였으며, 내가 관심이 있고 실제로 답을 알지 못하는 질문을 사용했습니다.
Fomite

답변:


12

서버쪽에 대해서는 언급 할 수 없습니다.

클라이언트 측에서는 매년 한 번의 컴퓨터 과학 회의에서 Mac 사용자의 비율이 증가한 것으로 보입니다. 학교에서 공급 한 Dell 노트북을 처리하는 데 어려움을 겪어서 Mac으로 전환했습니다. Consumer Reports가 내구성 측면에서 높은 등급을 받았기 때문에 주로 하드웨어로 Mac으로 전환했습니다. Linux를 실행하지 않으면 Mac이 과학 컴퓨팅에 적합하다고 생각하지 않습니다. 하드웨어에 대한 Linux 지원은 지연되는 경향이 있습니다. 일반적으로 지원되지 않는 무선 카드입니다 (새 모델에서 변경할 때마다). 가상 머신 실행과 함께 제공되는 리소스 페널티를 기꺼이 받아들이려면 매력적인 옵션 (및 개인적으로 사용하는 옵션)이 좋습니다.

Mac은 과학적인 컴퓨팅을하기 전에 많은 라이브러리와 소프트웨어 패키지를 설치해야합니다. Mac 설치 프로그램이있는 모든 것은 관리하기가 쉽기 때문에 Matlab, Mathematica, Maple, Python 등으로 대부분의 개발 작업을 수행하는 경우 OS X에서 해당 소프트웨어를 기본적으로 쉽게 설치하고 실행할 수 있습니다. Mac 설치 프로그램 (PETSc 또는 CLAWPACK과 같은 것)이있는 하드 코어 수치 소프트웨어를 추적하기가 더 어렵습니다. MacPortsFink 와 같은 패키지 관리자OS X 만 사용하려는 경우 상황에 도움이 될 수 있습니다. 또한 소스에서 많은 패키지를 컴파일해야합니다. 다른 곳에서 코드를 실행하려면 호환성 문제에주의해야합니다. Linux는 과학 컴퓨팅에서 널리 사용되기 때문에 이식성 측면에서 Linux에서 코드를 개발하는 것이 더 쉽습니다.

Mac에서 개발 환경을 설정하는 것은 엉덩이에 큰 고통이된다는 의견이 많은 친구로부터 일화를 들었습니다. 다른 사람들은 그렇게 나쁘지 않다고 말했습니다. 귀하의 마일리지가 다를 수 있습니다.


1
나는 투표했다 : 어떻게 리눅스에서 과학 컴퓨팅을 위해 Mac에 어떤 것을 설치하는 것이 리눅스보다 더 복잡합니까? Linux CAE에서 시작하면 대부분의 CAE가 내장되어 있지만 대부분의 다른 배포판에서는 패키지를 다운로드하거나 소스에서 빌드해야합니다. 특정 요구 사항 및 / 또는 최대 성능을 위해 라이브러리를 조정하려는 경우가 있습니다. 즉, Mac OS는 하드웨어와 독립적으로 OS를 라이센스하지 않는 한 (대학이 아닌) 대학에서 대규모로 채택하기가 어려울 것입니다. 추가 비용을 어떻게 정당화 할 수 있는지 잘 모르겠습니다 ...
FrenchKheldar

4
FrenchKheldar : 소프트웨어를 빌드 할 때 Mac에 설치해야하는 많은 부수적 인 것들이 있습니다 (Macbook Pro에서 작성). 많은 라이브러리와 도구는 apt-get 또는 yum에 설치되어 있습니다. 리눅스 박스, 최신 컴파일러, 최신 파이썬 등과 같은 더 큰 항목은 말할 것도 없습니다. 포트와 홈브류가있는 이유입니다. 그러나 항상 깔끔하게 설치되는 것은 아니며 모든 패키지가 둘 다있는 것은 아닙니다. 개발 환경에서 원하는 것에 따라 Mac에서는 더 어려울 수 있습니다. OTOH, 당신은 Xcode를 얻을 ...

2
그건 상당히 그것은 처음부터 동일한 코드를 컴파일하는 것보다 패키지 관리자에서 뭔가를 설치하는 것이 더 쉽습니다. 기껏해야 간단 ./configure && make && make install하지만 최악의 경우 스크립트, 플래그 및 라이브러리 위치를 정렬하는 미로가 될 수 있습니다. 데비안 패키지에서 PETSc 3.2를 설치하는 데 5 초가 걸렸습니다. Linux의 소스에서 설치하는 데는 하루 종일 다양한 옵션이 필요했습니다. 요점은 패키지 및 설치 프로그램이 Linux 용 Mac에서 존재하지 않아도되고 Linux를보다 쉽게 ​​사용할 수있게한다는 것입니다.
Geoff Oxberry

맥과 함께 공중에 매달려있는 "안정적인" 이라는 엄청난 성가심 도있다. 적어도 나는 여러 번 싸워야 만했다. 내가 개인적으로 가지고있는 좋은 예는 pthread에서 호출되는 코드 내부에 OpenMP pragma가있는 경우 앱이 완전히 충돌하고 타는 GCC 버그입니다. 실제로 Mac에서 GCC를 변경하는 것보다 쉬웠 기 때문에 사용 가능한 ICC를 사용하고 지원하는 결과를 얻었습니다. 맥에서 선사 시대 버전 (적어도 2 세 이상)을 가진 다른 라이브러리들이 많이있다.
TC1

13

@Geoff는 좋은 답변을 제공하지만 대안적인 관점을 제공 할 가치가 있다고 생각합니다.

많은 과학적 코드 개발을 포함하여 Linux VM이 아닌 OS X의 Mac에서 모든 작업을 수행합니다. 나는 주로 포트란과 파이썬에서 일합니다. 나를 위해, 편의

  • 하나의 OS에서 모든 작업을 수행 할 수 있고
  • 거의 하드웨어 고장이나 드라이버 문제를 다루지 않습니다

맥 특정 두통의 비용이 가치가있다.

세 가지 주요 두통은 다음과 같습니다.

  1. OS 표준 패키지 관리자가 없습니다. 옛날 옛적에 나는 Fink를 사용했지만 결국 두통이 더 심해졌 고 이제는 더 이상 사용되지 않습니다. Macports와 Homebrew에 대해 좋은 소식을 들었지만 Fink에 대한 경험을 통해 "나만의 롤링"을 할 수있었습니다.

  2. 내장 소프트웨어 중 일부는 매우 구식입니다. 특히 파이썬과 gcc. 즉, 번거로울 수있는 자체 업데이트 버전을 설치해야합니다.

  3. Apple에는 Fortran 컴파일러가 포함되어 있지 않습니다!

애플이 유닉스 기반의 파워 유저들에게 관심을 기울이고있는 것 같습니다. 한편 리눅스는 계속 개선되고있다. 결국 나는 아마 리눅스로 밀려날 것이다. 그러나 나는 누군가가 괜찮은 배터리를 만드는 법을 배울 때까지 내 맥북을 유지합니다.


1
Mac의 과학적 컴퓨팅 환경 (컴파일러, 라이브러리)은 MacPorts에 의해 99 %로 제공됩니다. 완벽하지는 않지만 수동 설치보다 쉽습니다. 물론 작업을 완료하기 위해 얼마나 많이 설치해야하는지에 따라 다릅니다.
khinsen 2012 년

9

나는 맥이 계산을위한 더 나은 환경이라고 주장 과학자 가 계산을 위해보다 과학 . 상용 컴퓨팅 환경에서 Mac을 사용하고 싶지 않습니다. 하드웨어는 상대적으로 너무 비싸다. 특정 패키지에 필요한 조건에 맞게 소프트웨어 환경을 구축하는 데 어려움이있을 수 있지만 일반적으로 처음 알아 낸 후에는 비슷한 Windows 설치보다 유지 관리가 훨씬 쉽습니다. (그리고 패키지 관리자에 따라 Linux만큼 쉬울 수 있습니다. MacPorts는 OS X 관리자로서 상당히 잘합니다!)

그러나 바쁜 계산 과학자를위한 작업 플랫폼으로서 Mac은 "심각한"작업을 위해 Linux 박스를 유지 관리하는 대신 단일 컴퓨팅 환경에서 작업하고 유지 관리 할 수있는 추가 보너스를 제공한다고 생각합니다. 다른 분야에서 일하는 동료가 나에게 마크 업이 필요한 Office 파일 (예 : 마크 업)을 보낼 때 다른 컴퓨터가 필요하거나 LibreOffice를 사용하여 올바른 형식이 아닌 RTF 템플릿으로 만 사용할 수있는 대학 양식을 작성해야합니다. LaTeX에서 목에 통증이 다시 생깁니다. (이전의 작업에서 Linux 소유자는 회사 환경에 액세스하기 위해 Linux 시스템이 아닌 다른 머신도 거의 필요했습니다. Mac 소유자에게는 실제로 두 번째 머신이 필요하지 않았습니다.)

또한 Mac을 PC 또는 Linux보다 작업하기에 훨씬 더 쾌적한 환경으로 만드는 여러 Mac 전용 프로그램 (예 : TextMate , Scrivener , Papers , Things , OmniFocus 또는 BibDesk )이 있습니다. 소프트웨어 환경에서 원하는 작업을 수행하기 위해 수행해야하는 작업보다 작업 수행에 집중하는 데 더 많은 시간을 소비하고 있습니다.


5

HPC 및 과학 컴퓨팅에서 OS X 사용률이 낮으며 대안 (Linux)을 사용하는 OS X의 장단점과 많은 관련이 있습니다.

OS X 전문가 :

  • 세련된 UI; 여전히 * nix
  • MS Office, Adobe 프로그램과 같은 데스크탑 / 디자인 앱은 잘 지원됩니다
  • 매우 잘 지원되는 멀티미디어
  • 애플 생태계 (아이폰, 아이튠즈 등)를 좋아하는 사람들

OS X 단점 :

  • 값 비싼 하드웨어에서 실행되며 모든 사람이 Macbook, 특히 Thinkpads (키보드 + 트랙 포인트)에 익숙한 사람들을 좋아하지는 않습니다.
  • 데스크탑 / 클러스터에서 하드웨어를 업그레이드 할 수 없습니다 (예 : CUDA 앱으로 최신 NVIDIA 카드를 사용하려는 경우)
  • 사용자 정의 할 수없는 확장 된 GUI (Linux에서는 최소 창 관리자를 사용할 수 있음)
  • Macports / Fink의 패키지 mgmt는 Linux (Debian) 배포판과 비교할 때 하위 수준입니다. 대부분의 패키지는 적극적으로 유지 관리되지 않거나 분리되어 있습니다.
  • 일부 유용한 도구 / 프로그램은 전통적으로 OS X에서 실행되지 않았거나 여전히 실행되지 않습니다. 예를 들어 ...

    1. Sun Studio가 여전히 작동하지 않습니다
    2. Valgrind는 최근에 작업을 시작했으며 모든 기능이 지원되는 것은 아닙니다
    3. 최근 몇 년간 인텔 컴파일러도 사용 가능
    4. Apple은 Fortran 컴파일러를 패키지화하지 않으며 타사 (대개 개인)에 의존하여 특정 OS X 버전 (개인이 가지고있는)에서만 작동하는 바이너리를 빌드해야합니다. 그러한 경우에는 지원이 거의 없거나 존재하지 않습니다
    5. 상용 과학 앱 (ABAQUS, ANSYS, FLUENT 및 석유 / 금융 / engg 등의 산업에서 더 많은 것)은 OS X에서 (기본적으로) 실행되지 않습니다

리눅스 (데비안) 전문가 :

  • 최고 수준의 패키지 관리, 즉 컴파일러 설치, 대부분의 수치 / 과학 라이브러리 등은 명령없이 가능합니다.
  • Fink / Macports와 달리 패키지가 훨씬 더 잘 지원됩니다 (Debian에서는 블리딩 엣지 / 테스트 / 안정 버전을 사용할 수 있습니다)
  • 대부분의 클러스터는 일부 버전의 데비안 / Red Hat을 실행하므로 코드 포팅에 따른 번거 로움이 줄어 듭니다.

리눅스 (데비안) 단점 :

  • 표준 UI 없음
  • 데스크탑 / 노트북의 Linux는 모든 작업 (일시 중지 / 재개, 3D 비디오 가속, 사운드 등)이 작동하도록 약간의 조정이 필요할 수 있지만 최근 몇 년간 많이 개선되었습니다.

일부 예외를 제외하고 대부분의 사용자와 클러스터 / 시스템 관리자는 OS X가 데스크톱 생산성을 향상시키고 과학적 컴퓨팅 (컴파일, 사용, 개발)이 아니라는 것을 알고 있습니다.

OTOH 대부분의 Linux 사용자는 후자보다 전자를 쉽게 찾을 수 있으며 이는 전체 HPC / 과학 컴퓨팅 환경에 반영됩니다.


OS X에서 작동하지 않는 유용한 도구 목록에 추가하십시오 : gprof.
David Ketcheson

ThinkPad 참조로 인해 문제가 발생했습니다. 현재 우리는 애플 / 레노버 가족이 쪼개져 있고, 그러나 그녀는 트랙 패드를 싫어합니다 :)
Fomite

@DavidKetcheson은 OS X에 계측기 (이전의 Shark) 가 있기 때문 입니다.
Aron Ahmadia 2012 년

3

저는 수년 동안 데스크탑 (및 랩톱)에서 Mac만을 사용하여 과학 컴퓨팅 및 과학 소프트웨어 개발을 수행해 왔습니다. 다른 사람들이 지적했듯이 하드웨어의 품질, 많은 Mac 관련 소프트웨어의 고품질 및 필요한 경우 Word 및 Excel을 처리하는 기능은 Mac을 매일 사용하기에 매우 멋진 플랫폼으로 만듭니다.

또한 한동안 실험으로 Mac 기반 컴퓨팅 클러스터를 실행했습니다. 다시는 유혹하지 않는 실험입니다. Linux 클러스터와 비교할 때 데스크탑에 Mac이있는 경우 소프트웨어 설치가 쉽다는 것 외에는 다른 이점이 없습니다 (동일한 항목 만 설치하십시오). 적절한 다중 사용자 GUI 지원이 부족하다는 단점이 분명하게 드러납니다. Mac에서 한 대의 컴퓨터는 한 화면과 최대 한 명의 로그인 한 사용자와 같습니다. 따라서 GUI 기반 도구를 사용하기가 쉽지 않습니다. 그에 비해 Linux에서 일반 X- 윈도우도 사용하는 것이 즐겁고 VNC와 NoMachine NX가 더 좋습니다.

그렇습니다. Mac은 X 윈도우를 지원하지만 대부분의 Mac 용 GUI 프로그램은 기본 인터페이스를 사용합니다.


Mac 기반 클러스터 실행에 대한 통찰력에 감사드립니다. 어떤 GUI 도구가 부족하다고 생각하십니까?
Fomite

MacPorts를 통해 X- 창 기반 소프트웨어를 설치하면 과학을위한 대부분의 GUI 도구를 얻을 수 있지만 많은 작업이 필요합니다. 반면에 한 사용자 = 한 대의 컴퓨터 = 한 대의 Mac GUI의 기본 제한을 수락하지 않는 한 독점 소프트웨어 (예 : Mathematica)를 원거리에서 사용할 수있는 기회는 없습니다. Mac 관련 소프트웨어를 더 많이 원할수록 GUI 문제로 인해 더 많은 장애를 겪게됩니다.
khinsen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.