본문 바로가기
C.W.K.
Stream
Lesson 01 of 05 · published

conda가 pip와 별도로 존재하는 이유

~11 min · conda, overview, python, data-science

Level 0입문자
0 XP0/55 lessons0/16 achievements
0/80 XP to next level80 XP to go0% complete

conda는 pip이 해결하지 못하는 비 Python binary 설치를 맡아. conda install pytorch를 실행하면 운영체제, CPU 아키텍처, CUDA 버전에 맞는 미리 컴파일된 PyTorch를 받아. 직접 컴파일하거나 Xcode 도구 모음을 준비하고 C 확장과 씨름할 필요가 없어. 이 한 가지 능력 때문에 conda가 데이터 과학, 머신 러닝, 과학 컴퓨팅에서 널리 쓰여.

conda는 여러 언어와 플랫폼을 아우르는 패키지·환경 관리자야. Python뿐 아니라 R 패키지, OpenSSL·BLAS·MKL 같은 C/C++ 라이브러리, CUDA 도구 모음, 컴파일러와 과학 연산 구성 전체를 관리해. conda 환경은 Python 의존성 아래의 binary 구성까지 격리하지. 그래서 conda create 한 번으로 TensorFlow와 CUDA가 함께 작동하는 GPU 환경을 만들 수 있지만, 같은 구성을 pip으로 만들면 CUDA 드라이버를 직접 설치해야 할 수 있어.

대가도 있어. 무거운 SAT solver 때문에 순수 Python 패키지에서는 pip보다 느리고 uv보다는 훨씬 느려. 패키지는 defaults, conda-forge, bioconda 같은 channel에 나뉘어 있으며 모든 PyPI 패키지가 conda channel에 있는 것도 아니야. 그래서 conda와 pip을 함께 쓰는 흐름이 실제로 필요하지만 실수하기도 쉬워.

데이터 과학, 머신 러닝, 과학 컴퓨팅을 하거나 PyTorch와 CUDA, TensorFlow와 cuDNN 같은 GPU 구성이 필요할 때, 비 Python binary가 필요할 때, 기존 conda 프로젝트를 이어받았을 때 conda를 써. 웹·API·CLI 프로젝트처럼 의존성이 모두 순수 Python이고 속도가 중요하다면 uv나 pip이 더 잘 맞아.

Code

pip에는 없는 conda 기능·text
  pip install pytorch
  → 일부 플랫폼에 wheel 있음; CUDA 매칭은 너 문제
  → macOS Apple Silicon 에선 MPS-only 빌드 받음 (CUDA 없음)
  → 특정 CUDA 툴킷 필요하면 별도 install

  conda install pytorch -c pytorch
  → OS + arch + CUDA 매치된 사전 컴파일 binary
  → cudatoolkit + cudnn 자동 binary deps 로 끌고 옴
  → macOS Apple Silicon 에 자동 MPS 빌드, 마찰 없음

  그래서 데이터 사이언티스트 / ML 사람이 conda 사용. Python 패키지 아님.
  Binary stack 관리.

External links

Exercise

PyTorch, TensorFlow, OpenCV, GDAL, codec 지원이 필요한 ffmpeg-python처럼 binary 의존성이 있는 실제 도구 하나를 골라. https://anaconda.org에서 검색하고 플랫폼·버전 조합을 살펴봐. 복잡한 구성이 conda에서 바로 작동한다는 점이 conda의 존재 이유야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.