Tuesday, April 25, 2017

전문가 대담: 눈 앞으로 다가온 기계학습의 시대와 GPU 컴퓨팅

한국 IBM의 유부선 상무를 만나 Machine Learning/Deep Learning의 연산 플랫폼으로 새로이 관심이 집중되고 있는 GPU 컴퓨팅과 인공지능의 현재와 미래에 대하여 전반적인 이야기를 나누었다. 그 중에 GPU 컴퓨팅을 바탕으로 co-processor 그리고 시장에 새로이 소개된 기술과 이를 기반하는 시장의 전망까지의 인터뷰를 정리하여 여기에 싣는다. 대화 중에 등장한 전문용어는 이해를 돕기 위해 설명을 겯뜨렸다.

유부선 상무는 1996년 한국IBM에 입사했다. 이후 현재까지 기술영업 최일선에서 일하고 있으며, IBM Power Systems를 바탕으로 UNIX, Linux 그리고 Big Data 및 GPU 컴퓨팅을 지원하고 있다. 한국IBM에서 최고 엔지니어로 평가받고 있으며, 두터운 고객의 신뢰는 그 증거이다.

X X X X X

– GPU computing이란 무엇인가요?

> GPU를 이용한 컴퓨팅을 말합니다. 여러가지 병렬단순계산 작업을 GPU를 이용해서 가속화하는 컴퓨팅, 대표적인 것으로는 과기연산용 HPC 업무 및 금융 관련 위험 관리 업무 등에서의 대규모 계산 등이 있습니다. 최근에는 Machine Learning/Deep Learning (기계학습(機械學習)/심층학습(深層學習), 이하 ML/DL) 쪽이 각광받고 있습니다.

본 대화에서 언급되는 GPU는 GPGPU(General Purpose Graphic Processing Unit)를 말한다. 영상 출력을 담보하지 않는 일반연산용 GPU이다. 이에 대한 일반적인 설명은 이전 글을 참조하면 좋겠다.

– GPU 컴퓨팅을 말할 때 '병렬'과 '가속'이라는 표현이 항상 함께 등장합니다. 그렇다면, GPU 컴퓨팅에서 이 두가지에 대하여 특별한 능력을 발휘한다는 뜻으로 해석도 가능하다고 보는데요, 이런 '병렬'과 '가속'을 목적으로 하는 연산에서 반드시 GPU를 사용해야 할 이유가 있나요? 혹은 다른 유용한 방식 또한 존재하나요?

> 일단 GPU가 하는 일을 모조리 CPU가 해도 되고, 어떤 경우에는 CPU가 할 때 더 빠른 경우도 꽤 많습니다. 단지 계산이 단순한데, 굉장히 많이 병렬화 할 수 있다면, GPU를 활용하는 것이 더 빠르고 더 저렴하게 할 수 있겠습니다. 하여 GPU가 주목받게 된 이유이고, 병렬화 할 수 있는 것이 많지 않다면 CPU로 연산하는 것이 더 좋은 결과를 가져올 때도 있습니다.

– 그럼에도 불구하고 GPU를 많이 언급하는 것은 아무래도 효율이 더 좋아서 그런 것인가요?

> 결국 효율의 문제이고, 더 빠르게 더 적은 비용으로 할 수 있다면 어떤 방식의 하드웨어를 선택하든 문제는 없습니다.

– 일반적으로 GPU의 스펙을 보면, core 수가 엄청나게 많은 걸 알 수 있습니다, 앞서 말씀하신 업무의 특성과 관계를 보면, 어떤 설계의 방식이 반영되었기 때문에 그런 효율을 내고, 이렇게 많은 core를 집적화 활 수 있는 것인가요? 그리고 CPU의 core와 GPU의 core는 결정적으로 다른 점이 무엇일까요?

> 현대적인 CPU는 막연히 clock speed가 높다 cache가 많다 – 그런 것 뿐만 아니라, core내에서 병렬화를 통합 성능 향상을 위해 CPU의 하드웨어 instruction set을 설계할 때 branching이라든가 predication이라든가 여러가지가 구현되어 있습니다. 그에 비해 GPU는 그런 것들이 생략된, SIMD같은 '단순연산'을 하는데 최적화된 core를 가지고 있어요.

Branch: 브랜치(branch)는 컴퓨터가 다른 명령 시퀀스를 실행하기 시작하게 하여 명령을 순서대로 실행하는 기본 동작에서 벗어나는 컴퓨터 프로그램의 명령이다. 브랜치(또는 분기 된 브랜치)는 또한 분기 명령을 실행 한 결과로서 실행을 다른 명령 시퀀스로 전환하는 단계를 포함한다. 분기 명령어는 조건부에 따라 분기를 수행하는 무조건 부 분기 또는 분기를 유발할 수도 있고, 하지 않을 수도 있는 조건 분기일 수 있습니다. 분기 명령은 프로그램 루프 및 조건(즉, 특정 조건이 충족되는 경우에만 특정 명령 시퀀스를 실행)에서 제어 흐름을 구현하는 데 사용된다. https://en.wikipedia.org/wiki/Branch_(computer_science)

Predication: 컴퓨터 과학에서 프레디케이션(Predication)은 조건부 분기 명령어의 대안을 제공하는 아키텍처 기능이다. 프레디케이션은 브랜치의 두 경로 모두에서 명령을 실행하고 취해진 경로의 명령 만 아키텍처 상태를 수정할 수 있게 한다. 취해진 경로의 명령어는 명령어가 아키텍처 상태를 수정할 수 있는지 여부를 제어하기 위해 명령어가 사용하는 부울 값 인 술어로 연결 (예측)되어 있기 때문에 아키텍처 상태를 수정할 수 있다. https://en.wikipedia.org/wiki/Branch_predication

SIMD: Single Instruction, Multiple Data를 의미한다. 마이클 플린이 분류(Flynn's Taxonomy)한 컴퓨터 아키텍처의 한 종류로, 단수의 명령어로 다수의 값을 동시에 계산하는 병렬연산의 한 방식이다. https://en.wikipedia.org/wiki/SIMD

SIMD2.svg
By Vadikus - Own work, CC BY-SA 4.0, Link

– 그렇다면, '단순연산'과 그렇지 않은 연산, 즉 '복잡연산'의 차이를 어떻게 구분할 수 있을까요?

> 가장 쉬운 건 if/then 즉, 조건문이 들어 가느냐? 아니냐? 로 구분하는 것이 제일 좋을 듯 합니다. 만약 새로 들어온 값이 10보다 크냐? 작으냐? 에 따라서 연산하는 것은 복잡한 연산으로 GPU에 적합하지 않구요, 그냥 테이블이 100만개 칸이 있는 행렬이 두 개 있는데, 같은 칸 끼리 동시에 더하거나 곱하거나 빼거나 나누거나 하는 게 단순연산이고, GPU에 맞죠.

– GPU에 대해서 찾아보면 co-processor라는 말이 항상 따라오고, 부동소수점연산이라는 말도 함께 쓰이는 것을 알 수 있었습니다, 그럼 GPU는 co-processor이고, 하는 일은 부동소수점연산이다 – 라고 봐도 무관할까요?

> 반드시 그런 것은 아닙니다. 지금까지 GPU가 주로 한 일이 과학기술에 관련된 연산이나 금융업에서 크고 작은 숫자를 계산하는데 사용되었기 때문에 부동소수점계산이 언급되는데, 주로 쓰임이 그렇다 보니 그 방향으로 개발되어 왔고 현재 그렇게 널리 사용될 뿐입니다.

초기 microprocessor는 부동소수점 연산을 위한 능력을 따로 갖추고 있지 않았다. 이를 위해 다른 하드웨어 장치를 사용하기도 했다. Co-processor가 바로 그것이다. PC 수준에서 이와 같은 이야기는 아마도, Intel의 오래된 CPU를 기억해 낸다면, 바로 그것이다. 486DX, 486SX등의 이름으로 시장에 나왔다. 이 중 SX가 부동소수점 연산을 위한 설계가 반영되지 않은 제품이었고, DX가 이를 반영한 제품이었다. 상대적으로 SX가 저렴 했으며, 일반 PC 사용자에게 부동소수점연산의 이점이 크게 없었음으로 많은 판매가 이루어졌다. 또한 Intel은 487SX과 같은 co-processor를 따로 판매하기도 하였는데, 'Math CoProcessor'라는 이름으로 시장에 알렸다. 486SX를 사용하다가 나중에 이를 추가할 수 있었다. 이를 위한 소켓도 마더보드에 위치해 있었다.

KL Intel i487SX.jpg
By Konstantin Lanzet (with permission) - CPU collection Konstantin Lanzet, received per EMail, CC BY-SA 3.0, Link

– co-processor 시장을 보면, Nvidia의 Tesla, Intel의 Xeon-Phi가 눈에 띕니다. Tesla와 Xeon-Phi은 어떤 점에서 차이를 설명할 수 있을까요?

> 같은 역할을 수행한다는 점에서는 비슷하다고 말할 수 있겠습니다. 하지만, 전혀 다른 제품입니다. 차이점은 소프트웨어 쪽에서 쉽게 찾을 수 있는데요, Nvidia는 CUDA라는 개발환경이 제공되고 현재는 산업표준처럼 시장에서 인식하고 있습니다, Nvdia의 GPU는 CUDA에 '당연히' 최적화 되어 있습니다. 그에 비해, Xeon-Phi는CUDA과 비견할 만한 에코-시스템이 없는 형편입니다. 그리고 Xeo-Phi는 Intel CPU의 기존 core들을 굉장히 단순화하여 집적화 시킨, 그러니까 기존 x86 CPU에서 크게 변화하지 않은 점을 들 수 있겠습니다.
대신 Xeon-Phi는 특이하게, co-processor mode로만 쓰이는 것이 아니라, host mode로도 사용할 수 있습니다. 기존의 x86 플랫폼의 OS를 그대로 사용할 수도 있다는 뜻입니다. 물론 성능은 대단히 좋지 않다고 들었습니다.

– 하나의 co-processor card를 co-processor mode와 host mode로 전환해서 사용할 수 있다는 이야기인가요?

> co-processor로 쓸 수 있는 하드웨어와 host로 쓸 수 있는 하드웨어는 서로 다릅니다. 상호 전환해서 쓸 수 있는 건 아닙니다. 재미있는 점은, Xeon-Phi 이야기를 많이 들어보기는 했지만, 지금까지 만나온 여러 고객들 중에 Xeon-Phi를 ML/DL에 사용하는 경우를 보지 못 했다는 것입니다.

Intel의 Xeon-Phi는 자사의 Atom 프로세서와 같은 core 기반으로 만든다고 한다. Intel Xeon Phi는 processor와 Coprocessor로 명명된 제품이 있다. 공식 명칭에서 이렇게 구분하는 것처럼, Xeon Phi Processor는 운영체제를 직접 동작시킬 수 있는 host로 사용되고, Xeon Phi Coprocessor는 co-processor로 컴퓨팅 시스템의 PCIe Slot에 장착된다.

Intel Xeon Phi Coprocessor © Intel

Intel Xeon Phi Processor로 구성된 compute server © Intel

– ML/DL에 관한 글을 찾아보면 GPU에 대한 언급이 아주 많습니다. 세계적인 ML/DL 권위자인 Andrew Ng[吳恩達]의 강의를 봐도 GPU의 역할에 대하여 언급하고 있습니다. 이 둘의 관계는 앞서 말씀해 주신 '단순연산' 영역에서 GPU가 탁월하고 ML/DL은 그러한 '단순연산'의 영역에 있는 컴퓨팅이기 때문이라고 이해하도 될까요?

> ML/DL에 반드시 GPU를 사용해야 하는 건 아닙니다. 어떤 대규모 neural network을 운영하는 곳에서 CPU를 더 많이 사용한다는 이야기도 있습니다. 아시다시피 Google 같은 곳은 TPU를 자체 제작하여 쓰고 있기도 합니다. 다만, GPU를 널리 언급하는 것은 그것이 비용효율적이기 때문이라고 전 이해하고 있습니다.

– 결국 하드웨어 중심의 특별한 기술적인 장점보다는 어떤 기술의 도입이든 성능대비 비용효율이면 ML/DL에서 좋은 시스템이라고 판단할 수 있겠군요. 그렇다면, 최근 IBM이 시장에 선보이고 있는 GPU 시스템인, S822LC for HPC는 어떤 제품입니까?

> 기술적인 장점 뿐만 아니라, 비용효율적인 운영면에서도 좋은 시스템입니다. 특히, 다른 제품에서는 해결하지 못 하고 있는 문제, GPU와 CPU 간의 병목문제를 해결한 점에서는 높은 가치가 있는 시스템이라고 할 수 있습니다.

IBM S822LC for HPC는 ML/DL을 위해 디자인 되어 있다. 2U form factor 크기인 이 시스템은 표준 19인치 랙 마운트 형식으로, GPU로는 Nvidia Tesla P100이 탑재되고 총 수량은 4개까지 수용된다. CPU는 Power8 2 소켓으로 구성되며 총 20개 혹은 24개 core 구성이 가능하고 core 당 8개 threads를 제공한다. 메모리는 32GB 구성에서 1024GB 구성까지 가능하다. 또한, 대규모 구성을 위한 수냉식 옵션도 제공한다.

운영체제로는 현재 Ubuntu가 공식 지원되며 곧 RHEL도 그 목록에 들어올 것이다.
S822LC for HP, 이 제품은 무엇보다 Nvidia가 설계한 NVLink가 최초로 반영된 시스템이다. 이 NVLink는 기존 PCIe 3.0 x16 대비 5배 넓은 대역폭을 자랑하며 CPU와 GPU 그리고 GPU와 GPU를 직접(Peer-to-Peer)연결한다. 이를 통하여 ML/DL에서 항상 하드웨어의 제약으로 생각되던 PCIe 버스의 I/O 병목현상을 획기적으로 해결할 수 있다.

IBM S822LC for HPC
IBM S822LC for HPC

– 이런 제품을 고객과 이야기를 해 보면, 실제로 IBM 왓슨으로 대표되는 클라우드 컴퓨팅 기반의 intelligence services와 비교를 많이 한다고 합니다. S822LC for HPC와 클라우드 기반의 intelligence services를 단적인 차이점을 말씀 해 주신다면?

> 내가 고기를 사서 고기를 구워 먹느냐? 음식점에 가서 스테이크를 시켜 먹느냐? 와 정확히 일치한다고 할 수 있습니다. 호수산 와규든 국내산 한우든 내 기호와 예산에 맞추어 직접 고기를 고를 수 있고, 무엇보다 중요한 건 굽는 방법 등을 스스로 채득하여 지적자산으로 보유할 수 있다는 것이 있겠죠. 그게 아니고, 고급 레스토랑에 가서 사먹으면 확실히 빠른 시간 내에 더 좋은 것을 먹을 수 있긴 한데, 돈도 많이 들고 자신에게 (경험과 지식이) 쌓이는 건 훨씬 더 적겠죠.

– 가까운 미래에, GPU 혹은 GPU와 같은 co-processor가 보편적인 컴퓨팅 시스템에 전반적으로 탑재될 가능성은 있을까요?

> 그럴 가능성은 없다고 봅니다. 보편적인 컴퓨팅 유형과 co-processor가 필요한 영역은 확연히 구분됩니다. ML/DL 혹은 유사한 분야에 참여하는 기업 ⋅ 연구소⋅ 개인은 지금보다 확실히 늘어나겠죠, 그에 따른 시장도 확대되는 건 예상할 수 있겠습니다.

– Power Systems의 로드맵을 보면, 차세대 POWER CPU, POWER9에서 OpenCAPI(CAPI 3.0)와 NVLink 2.0를 동시에 사용하는 것으로 보이는데요, 이 두가지가 하나의 버스인가요? 아니면 각자의 독립된 버스를 사용하는 것인가요?

> POWER9에 사용하는 OpenCAPI와 NVLink의 차세대 2.0 버전은 같은 버스를 씁니다. 25GB/s 링크입니다. 이는 PCIe와는 관계가 없고, PCIe도 4.0으로 소개될 것입니다.

IBM 서버 컴퓨팅 플랫폼의 차세대 CPU인 POWER9은 2017년 말에 시장에 소개될 예정이다. CAPI 3.0 즉, OpenCAPI라는 IBM의 버스 기술과 Nvidia의 NVLink 2.0을 동시에 사용할 수 있을 뿐만 아니라, PCIe Gen 4도 탑재될 것으로 알려져 있다. CPU와 I/O 모두 새로운 세대로 본격 진입하게 된다. Nvidia는 NVLink 2.0을 POWER9을 통해 처음 세상에 선보이게 되고, 이 때 현재 Tesla Pascal의 다음 세대인, Tesla Volta가 시장에 나올 것으로 알려지고 있다. 이에 대한 상세한 정보는 IBM developerWorks에 소개되고 있다. CAPI에 대한 정보는 Wikipedia에 잘 정리되어 있다.

X X X X X

---
이 글은  developer.ibm.com/kr 에 crossposting 됩니다.
관련 글: https://developer.ibm.com/kr/author/jhin/
같은 글: https://developer.ibm.com/kr/systems/gpu/2017/04/25/ask-a-professional-what-is-gpu-computing-and-machine-learning-around-us/

Monday, April 24, 2017

2016년 지구를 위해 내가 한 일

그리고 지금도 신경쓰며 하고 있는 일.
  • 사무실에 머그 컵을 두고 사용했다.
  • 자가용 주행거리를 전년대비 절반 이하로 줄였다.
  • 통에 든 물(bottled water)를 사 먹지 않고, 수돗물(tap water)를 마셨다.
    물론, 의심이 많은 난, 정수기도 마련했다.
  • CD/DVD/Blu-ray를 사기보다는 되도록이면 디지탈 매체를 이용했다.
    YouTube Red, Apple Music, Netflix의 회원이 되었다.
  • PC 교체의 욕구를 잘 억눌렀다.
  • 몸을 씻는 횟수를 줄였다.
    더 줄여도 상관없다고 환경보호론자들이 주장하고 있지만, 난 사람을 만나야 하는 직업이어서 '휴일 더럽게 지내기'만이라도 실천하고 있다. 확실히 지구에 사는 생물 중에 사람만큼 스스로의 청결을 위해 자원을 낭비하고 그 청결이 너무 심각하여 새로운 병에 시달리는 이상한 종은 없다.
  • 사용하는 종이의 양을 줄였다.
    집에 있는 프린터의 토너를 1년에 한 번 정도 교체한 것 같은데 2년 가까이 되어가고 있다. A4용지는 사는 일은 없었고, 사무실에서 버려지는 (내부용 정보가 없는) 이면지를 챙겨 모아 사용했다.
    한 해 동안 내가 산 노트는 딱 한 권이었다. 보통은 5권 남짓 샀었다. 필기구를 이리저리 굴려대며 글자를 써내려 가는 것을 매우 좋아하고 내 손으로 만들어 내는 서체에 애착도 있지만, 전자기기에 메모를 남기는 일이 익숙해지도록 노력했다.
더불어...
포장이 과한 상품은 사지 않았다, 외국에서 생산된 제품보다는 내국에서 내국에서 생산되는 것 중에서도 내가 사는 곳과 가까운 곳에서 생산된 상품을 선택했다. 한 번 쓰고 버릴 건 쓰지 않으려 했다, 위생에 관한 것은 예외로 두었다. 편리하며 옳지 않은 건 나쁜 것으로 생각했다. 불편하더라도 옳은 것을 선택하기 위해 조금 더 귀찮아지고, 조금 더 참아내고, 그래서 조금 더 이 마음과 행동을 지속하면 익숙해 질 것이라고 믿고 있다.

Monday, March 27, 2017

GPU 컴퓨팅이란?

GPU의 등장

GPU는 Graphic Processing Unit의 두문자집합이다.
'GPU'는 1999년 Nvidia가 GeForce 256을 발표하면서 처음 사용하였고, 지금은 일반명사가 되었다.

KL NVIDIA Geforce 256.jpg
By Konstantin Lanzet - received per EMail Camera: Canon EOS 400D, CC BY-SA 3.0, Link

GPU의 등장은 그 동안 단순한 화면출력 장치가 연산장치로 변화한다는 것을 의미했다. GPU의 등장으로 적은 컴퓨팅 자원으로 폴리곤(Polygon)을 화면 속에서 자연스럽게 구현(TCL; Transform, Clipping, and Lighting)할 수 있게 되었고, 프레임워크와 라이브러리를 통하여 사실적인 움직임을 보다 쉽게 만들 수 있게 되었다.

이렇게 새로운 시장을 연 Nvidia는 2007년 GPU를 일반연산에 참여시킬 수 있는 Tesla 제품군을 발표하며 새로운 코프로세서(co-processor)의 시대를 선언했다. 코프로세서로서의 GPU를 GPGPU, General Purpose Graphic Processing Unit이라고 한다. 즉, 그래픽 출력을 담보하지 않는 일반목적 연산장치이다.

GPU 컴퓨팅이란 바로, GPGPU를 연산에 참여시키는 것을 의미한다.

GPU가 연산하는 방식

GPU는 작고 단순한 연산 코어를 CPU와는 비교할 수 없을 정도로 많이 가지고 있다. 현재의 CPU가 서른개 미만의 코어를 가지고 있다면, 최신 GPU는 3천개 이상의 코어를 가지고 있다. 물론, GPU의 코어는 CPU의 코어와 비견될 만한 능력을 가지고 있는 것은 아니다. 하지만, 단순한 연산을 이 GPU에게 맡긴다면 그 효율은 엄청나다.

GPU의 효율을 말할 때, 항상 언급되는 것이 '병렬연산'이다. 많은 코어를 한 번에 많은 일을 시켜야 그 효율을 극대화 할 수 있다는 말도 된다. CPU는 그에 비해 '직렬연산'에 가깝다고 할 수 있다. 구조의 차이이지 능력의 차이는 아니다. 그렇다면 '병렬연산'과 '직렬연산'을 어떻게 비교할 수 있을까?

다음의 숫자들의 합을 구한다고 가정하자.
CPU는 첫번째 수부터 마지막 수까지 순차적으로 합하여 결과를 출력한다.
GPU는 일정한 묶음으로 처리할 수 있다. 연산단계가 엄청나게 짧아 결과출력까지의 시간을 획기적으로 단축시킬 수 있다. 혹은 동일 성격의 문제를 동시에 여러개 처리할 수 있다.

그림: 직렬연산과 병렬연산, 출처: 직접작성

GPU 컴퓨팅과 ML/DL

GPU는 이렇게 병렬연산에서 특별한 능력을 발휘한다. 이런 병렬연산이 특히 요구되는 분야가 machine learning/deep learning(ML/DL) 분야이다. 인공지능은 아직 찾아오지 않았고, 어쩌면 우리가 죽는 날까지 찾아오지 못 할지도 모른다. 1950년대부터 우리는 AI에 대한 부푼 꿈을 키워 왔지만 번번히 좌절했다. 하지만, 기계가 학습하여 보다 좋은 결론으로 빠르게 이르게 하는 것은 지금도 가능하다. 그것이 ML/DL이다. 그리고 GPU를 중심으로 눈부시게 발전하는 하드웨어 기술이 그것을 뒷받힘하고 있다.

ML/DL은 많은 데이터를 그리고 유사한 유형의 데이터를 반복적으로 분석하는 작업의 연속이다. 단순하게만 본다면 그렇다. 이러한 패턴은 병렬연산에 가깝다. 그래서 Ml/DL에서 하드웨어 기술로 GPU가 자주 언급되는 것이다.

IBM은 S822LC라는 서버 시스템에 GPGPU를 탑재하여 시장에 선보였다. 첫번째 제품이 코드네임, 'Firestone'이었고, 두번째 제품이 작년 겨울이 시작할 무렵 출시된 'Minsky'이다. 그렇다, 2016년 초에 작고하신 Marvin Lee Minsky 박사님을 기리는 의미로 지었다. Firestone이 여타 서버 시스템처럼 PCIe 버스에 K80을 장착한 것과는 다르게, Minsky는 Nvidia와의 협업을 통하여 기존의 PCIe를 대체하는 NVLink라는 새로운 전용 버스를 설계에 반영하여 P100을 장착했다.

GPU 컴퓨팅의 더 큰 가능성, NVLink

NVLink는 lane 당 20GB/s 대역폭을 가지고 있다. PCIe 3.0은 lane 당 1GB/s이다. NVLink는 GPU 당 4개의 lane을 가질 수 있고, PCIe 3.0의 최대 lane 수는 16개이다. NVLink는 GPU와 CPU 그리고 GPU와 GPU가 직접 연결(peer-to-peer)되지만, PCIe 3.0은 그렇지 못 하다. 이런 특성은 실제 운영환경에서 5배에서 12배의 데이터 이동 속도의 차이를 관찰할 수 있다. NVLink는 GPU의 가능성을 또 한 번 넓혔다.

---
이 글은  developer.ibm.com/kr 에 crossposting 됩니다.
관련 글: https://developer.ibm.com/kr/author/jhin/
같은 글: https://developer.ibm.com/kr/systems/gpu/2017/03/27/what-is-gpu-computing/

Thursday, February 09, 2017

진씨의 가방 속 - what's in jhin's bag

매일 4시간 길바닥에서 회사와 집을 오가는, 월급쟁이자  IT 아키텍트인 진씨의 가방 속에는 무엇이 들어 있는지 슬쩍 보는 포스트입니다. 8-)


가방입니다. '거의' 매일 나의 어깨 위 혹은 다리 위에서 함께하는 가방입니다. 이마트, 레고 코너에서 정신없이 즐거워 하다가 주위를 돌아보니 제 허리에도 키가 미치지 못 하는 아이들만이 나와 같은 표정을 짓고 있다는 사실을 깨닭고 이상한 기분 속에서 집어 온 가방입니다. 사실 가방이 전시되어 있는 곳으로 가다가 자석의 끌림처럼 레고와 마주한 것이었습니다. 가끔 잃어버리는 것이 정신인지, 가끔 되돌아 오는 것이 정신인지 잘 모르겠습니다.

매우 저렴합니다. 그럼에도 불구하고, 쌤소나이트 수준 이상의 내구를 자랑합니다. 특히 자동차 안전벨트와 비슷한 소재의 가방끈은 매우 튼튼하고 어깨에서 잘 미끌려 내려오지도 않습니다. 사실 직전에 쓰던 가방이 제법 높은 가격의 쌤소나이트였는데, 1년이 좀 지나자 지퍼가 고장나서 수리했고, 그로부터 몇 개월 지나자 가방끈의 제봉선이 터져버렸고, 2년이 되기도 전에 포기했더랬습니다. 아마 그 쌤소나이트의 지퍼 수리비보다 저 가방이 더 저렴할 것입니다.

'매우 만족'이라는 표현이 딱 적당한 가방입니다.
이 가방 속에 들어 있는 것들을 꺼내어 보겠습니다. 짜잔 ~


사과밭입니다. 사진 클릭하면 크게 볼 수 있습니다.
우측상단부터 S자를 그리며 설명합니다.

  • 노트북 파우치: 이 파우치는 한 애플매장에서 샀는데, 참 희귀하게 'Made in Korea'입니다. 전면에 포켓이 두 개 있는데, iPad와 iPhone에 딱 맞습니다. 그렇다고 그 두 포켓에 이것저것 넣고 다는 일은 거의 없습니다. 
  • MacBook Pro 13, Mid 2014: 512GB SSD, 16GB Memory - 사용자 구성으로 주문한 것입니다. 제가 소유하고 있는 공산품 중에 가장 만족하는 것입니다. 매일 이것으로 '진지하게' 일하고 키득거리며 놉니다.
  • iPad Air 2: 회사가 이유없이 나눠 준 것입니다. 대부분의 시간은 TV 앞이나 책상 위나 좌변기 옆에 있습니다. 출장을 가거나 먼 곳의 고객을 만나러 가는 일이 있으면, Netflix 전용 단말기로 변신합니다. Netflix App이 다운로드를 지원하는 건 축복과 같은 일입니다.
  • iPhone 7: 지금 제가 쓰는 전화기입니다. 불만이 많습니다. 나의 건조한 손가락(들)을 홈 버튼이 거부합니다. 안 눌러집니다. 손가락 중에 가장 '촉촉'한 새끼 손가락으로 홈 버튼을 눌러야 할 때가 많습니다. 물리 버튼이 그립습니다. 블루투스는 쓰레기에 가깝습니다. 3G-LTE를 숨가쁘게 오가는 통신 상태는 메롱이며 4인치 폼팩터에 익숙했던 나에게 5인치는 다루기 힘든 물건입니다. 'iPhone SE가 나았으려나' 지금도 생각합니다.
    이어폰용 3.5pi 단자 이야기는 굳이 하지 않습니다.
  • Kindle White Paper: 두 번째 킨들입니다. 아직 E-Ink로 된 eBook Reader 중에 이보다 나은 건 찾기 힘듭니다. 문제는 이 단말기는 Amazon.com으로 연결되고 그곳에는 한국어로 된 책이 없다는 것입니다. 그래서 활용도가 높지는 않습니다.
  • 가방을 샀을 때 따라온 큰 파우치와 출처를 알 수 없는 작은 파우치입니다. 큰 파우치는 작은 파우치를 포함하여 사진에서 오른쪽으로 놓인 물건들을 담습니다, 열쇠 뭉치 전까지입니다. 작은 파우치에는 수많은 젠더들을 넣어둡니다. 사과밭을 가꾸는 농장주의 숙명과 같은 일입니다. 
    • Thunderbolt-VGA, Thunderbolt-Ethernet, Lighting-VGA, Lighting-HDMI, iPhone 7 번들 Lighting-3.5pi, USB memory, 그리고 iPhone 7 번들 충전기입니다. 
    • 충전용 USB 케이블이 있고, iPhone 5s 번들 이어폰, EarPod 그리고 EarPod용 파우치, 카드형 USB memory, Logitech Presenter R400입니다. 
    • 이런 자잘하고 서로 엉킬 수 있는 것들을 잘 보관하고 - 필요할 때 즉시 찾을 수 있게 하고 - 동작 수명도 적정 수준까지 걱정하지 않으려면, 파우치는 필수라고 생각합니다.
  • iPhone 5s: Tmap 전용 단말기입니다. 가끔 Naver Map도 돌립니다. 운전할 때가 아니면 가방 속에서 '방전'의 운명을 담담하게 받아들립니다. 착한 녀석.
  • 제가 사랑하는 로트링 펜이 있고, 제가 구매를 후회하는 몰스킨 볼펜이 있습니다.
  • 안경 그리고 PowerBook Pro 충전기.
  • 핸드 크림 - 손이 비극적으로 건조합니다. 목이 마르는 건 참으면 그만이지만, 손이 마르는 걸 방치하면 갈라지고 피가 납니다. 손을 씻으면 핸드 크림을 '즉시시전' 해야 합니다. 여름에도 물론 치덕치덕 바릅니다. 그런 덕분인지 제 손은 안티-에이징되고 있는 것 같습니다. 곱습니다. 이런 신체적 특성 탓에 참으로 많은 브랜드의 다양한 제품을 써 봤습니다. 그 중 두 가지를 사용하는데, 사진의 것, Atrix(아트릭스) Hand & Nail은 휴대용이고, 집에는 Burt's Bees(버츠비)의 Almond & Milk Hand Cream을 씁니다. Burt's Bees가 참 좋은데, 흡수에 시간이 다소 걸리는 편이며 용기 형태가 휴대하기 적당하지 않습니다. 
    • Atrix(아트릭스)는 겨울 마다 마트에서 할인행사를 합니다. 음, 올해는 안 했네요. 아무튼, Artix는 가격대 성능비가 매우 좋습니다. 저렴하고, 휴대하고 사용하기 적당한 크기에다가 뚜껑이 똑딱이 방식이라 분실 위험이 없습니다. 피부에 아주 빠르게 흡수되고 적당한 보습력에 지속시간도 적당한데다가 무엇보다 '끈적이지' 않습니다. 
    • Neutrogena(뉴트로지나)도 만족스러운 보습력을 경험할 수 있지만, 너무 끈적여서 사용 후에 즉시 업무에 임하기가 어렵습니다. 
    • L'Occitane(녹시땅)의 제품은 훌륭하지만, 가성비가 좋지 않고 흡수시간이 Atrix와 Neutrogena의 중간 즈음됩니다. 하지만, 보습력과 효과 지속시간은 최고였던 기억이 있습니다. 역시, 그러나-무엇보다, 너무 비쌉니다.
  • 샤오미 충전용 베터리: 누구나 하나 즈음 가지고 있는 그것. 하지만, 그 누구도 자기 돈으로 사지 않았다는 충격적인 비밀.
  • 회사 출입증. (흠...) 혹은 고용상태가 유지되고 있는 것을 알려주는 증표. 사냥꾼의 징표
  • B&O play H5: 애증의 대상. 이를 악물고 익숙해지길 기다리며 매일같이 사용하고 있지만, 그 익숙함은 언제 허락될지 도무지 알 수 없는 - 2016년 구매 공산품 중에 최고가를 기록했던 물건입니다.
  • Moleskine Planner 몰스킨 플래너(와 밑에 깔린 몰스킨 노트들) - 아직 적을 것들이 필요합니다. 그래야지 기억되고 그래야지 진지해지는 것같은 기분이 드는 건, 옛날 사람이라는 증거가 아닐까? 하는 생각마저 듭니다. 전자기신호만으로 기록을 남기는 건 아무래도 나의 취향은 아닙니다.
  • 그리고 이 모든 것을 담아 내는 발군의 가방 - 브랜드를 알 수 없습니다. 

유행이 한-참-지난 놀이를 따라해 봤습니다. :-P
사과밭 가꾸기로 시작해서 파우치의 언덕을 넘어 핸드 크림 경험담으로 끝나버렸습니다.

Tuesday, January 31, 2017

B&O Play H5 - 돈 값 못 하는 무선 이어폰

B&O Play의 H5를 샀다.
가격은 무려 30만원대. 여전히 논란을 생산 중인 애플의 AirPods보다 비싸다.
이 가격은, 2016년 내가 공산품을 구매하는데 지불한 최대 단가였다.


이것은 블루투스로 연결되는 무선 이어폰이다. aptX와 AAC를 지원하고, iOS나 Android 연결 모두 문제없다. 독특하고 별난 충전방식을 사용하며 나름 팬을 거느린 브랜드 그리고 멋진 외관을 가진 전자제품이라는 걸 제외하고는 특별할 것이 없을 법하지만, 인터넷에 떠도는 리뷰를 시청하고 읽어 봤을 때 '스타일은 물론이거니와 음질도 좋은 무선 이어폰'이라는 결론이 이르렀고 - 샀다. 하지만, 곧 나의 선택이 옳지 않았음을 알게 되었고 부정적인 결론을 내렸다.

  • iPhone 번들 이어폰, EarPods는 나쁘지 않다. 심지어 7의 라이트닝 포트에 연결되는 그것도 괜찮다는 생각을 하게 되었다. 
  • AAC + iPhone + Apple Music이라는 공식에서 예상되는 장점은 잘 느껴지지 않는다.
  • B&O Play를 음향의 명가가 만든 제품이라고 사람들이 그러던데, 그건 아닌 것 같다. 정말 아닌 듯 하다. 모회사인 Bang & Olufsen도 전자기기를 설계하고 판매하는 회사이지 음향에 '많은' 공을 들이는 회사가 아니라는 생각을 했다.
  • 얼마나 많은 돈을 지불 하든 무선이 가진 한계를 뛰어넘지 못 한다, 당연하겠지만, 부질없는 기대는 당신에게 허망한 마음을 선물한다. 어쩌면, 1/10 가격의 유선 이어폰이 더 나은 선택이 될 수도 있다.
  • 대중교통으로 통근하는 사람들에게는 값비싼 대안이 될 수 있다. 통조림 같은 지하철에서 몸을 구겨야 한다거나 미친듯이 달리는 버스 속에서 중심을 잡다보면 무선이 유리할 수 있다. 그리고 이런 환경에서 중요한 건 음질이 아니다. 그런데, 가격을 생각하라.
  • H5가 귓속에 버티는 힘이 이어폰 두 개를 이어주는 천 재질의 선이 나의 옷과 만들어 내는 마찰력을 능가하지 못 한다. 그래서 쉽게 귀에서 빠진다. 무겁고 큰 이어폰은 귀를 쉽게 아프게 한다. 혹은 내 귀의 생김새가 H5 디자이너가 고려한 범위를 벗어난다.
  • 원격 조절장치가 왼쪽에 있다. 왼쪽에! 세상 거의 모든 장치들은 이 부분을 오른쪽에 위치해 둔다. 좋은 디자인은 관습을 파괴하면서 시작된다고 하지만, 이런 관습은 존중해 주는 것이 옳은 다지인이 아닐까?
  • 팟캐스트나 일렉트로니카를 주로 듣는다면 다른 경쟁제품과의 음질 차이를 느끼지 못 할 수도 있겠다. 혹은 더 좋다고 생각할 수도 있다. 하지만, 다른 장르는 명확하고 분명한 불만을 만들어 낼 것이다.
  • 조용한 환경에서는 사용을 자제하는 것이 좋다. 만약 그렇지 않다면 당신이 지불한 금액을 계속 생각하게 될 것이다.
  • 5시간이라는 사용가능 시간이 항상 유지되는 것은 아니다. 어떤 변위 때문인지는 알 수 없으나 +/- 1시간 정도 가능하다. 잘 생각해야 한다, -1 시간도 가능하다는 말이다.
  • 양쪽 끝을 자석으로 간단히 붙여 전원을 끄는 건 매우 영리한 설계이다. 이 제품에서 가장 마음에 드는 부분이다. 
  • 자체 충전장치만 사용해야 한다는 것은 매우 불만이다. 하지만 전체적인 아름다움을 유지하기 위해 micro-USB 포트를 희생시켰다면 이해가 되기도 한다, 그래서 이 회사 디자이너가 부럽기도 하다. iPhone 7의 이어폰을 위한 단자를 삭제한 것과는 다른 이야기이다.
  • iPhone 7의 블루투스 연결 상태는 불량하다. 굳이 삼성 갤럭시와 비교할 것도 없다. iPhone 6 혹은 5와 비교해도 그렇다.
  • H5는 전용 App을 제공한다. 스마트폰에서 음색을 조절할 수 있다. 하지만, 항상 그 설정이 유지되는 건 아니었다. 소리가 달리 들릴 때마다 App을 열어 다시 설정하며 신경질을 내게 된다. App의 문제인지, 이어폰의 문제인지, 블루투스 연결이 불량한 iPhone 7의 상태가 확장되어 만들어내는 또 다른 문제인지 정확히는 알 수 없다.