함께 놀자! Linux와 Python

리눅스 재교육을 위한 파트너 선정 방법

1. DMA에서 시작한 리눅스 바람. Exture+라는 파도를 타고 자본시장 전체를 뒤엎을 듯 합니다. 메임프레임을 몰아낼 때 유닉스처럼 화룡점정(畵龍點睛)은 증권사 및 선물사의 원장시스템입니다. Exture+ 서비스를 시작 일정도 불투명하기 때문에 리눅스 바람을 타고 차차세대 원장시스템이 등장할지는 예상하기 힘듭니다. 다만 큰 흐름은 바뀌지 않을 듯 합니다. 자본시장의 중심OS가 리눅스로 바뀔 때 가장 중요한 이슈는 인력입니다. 리눅스를 운영하고 관리하고 개발할 수 있뿐 아니라 아주…
Read more

윈도우 공유 그리고 설치

1. 윈도우 개발을 담당하는 파트너와 저는 윈도우7이 기본OS입니다. 윈도우8도 잠시 설치했지만 공인 인증 때문에 너무 불편해서 내렸습니다. 사실 윈도우 7도 불편합니다. 제가 이용하는 증권사와 은행이 제공하는 보안프로그램은 동작하지 않는 경우가 많습니다. 그래서 VirtualBox를 이용하여 윈도우 XP를 설치해서 금융회사와 국세청 서비스를 이용합니다. 몇 달동안 ZeroAOS의 터미날을 개발, 시험하고 있습니다. 다른 부분에 비해 늦게 시작한 부분이라 완성도가 많이 떨어집니다. 새로운 기능도 넣고…
Read more

프로그래머로 부터 배우는 코딩 기술

1. 아는 분이 페이스북에 좋은 글을 추천했었습니다. 제목은 “프로그래머로 부터 배우는 코딩 기술 (プログラマから学ぶコーディングテクニック)” 으로 CSS Nite in Seoul, Vol.3에 참여해서 발표한 자료입니다. CSS Nite in Seoul는 웹 제작 전반에 관한 주제를 가지고 각 분야의 전문 강사를 초청하여 발표와 토론을 갖는 일본에서 가장 큰 컨퍼런스이라고 합니다. 한국과 일본의 기술교류를 위하여 한국행사를 기획했고 2012년까지 3회를 했다고 합니다. 여의도가 아닌 곳에서는 좋은…
Read more

Windows환경에서 SSD 최적화하기

1. 그동안 Linux환경에서 SSD를 최적화하여 사용하는 방법을 알아보았습니다. Linux환경에서 SSD 최적화하기 Linux환경에서 SSD 최적화하기(2) Linux가 아닌 윈도우를 사용하는 많은 트레이더에게는 ‘그림의 떡’입니다. 그래서 ‘윈도우와 SSD의 최적화’를 주제로 조사를 하였습니다. 마이크로소프트가 윈도우를 독점하고 있기때문에 파일시스템간의 경쟁은 아주 제한적입니다. 그래서 선택도 무척 제한적입니다. 그동안 윈도우 개발자 혹은 이용자들이 주로 사용한 파일시스템은 FAT, FAT32, NTFS등입니다. Linux를 다룰 때 소개하였던 exFAT는 SSD를 조사하면서 처음…
Read more

Linux환경에서 SSD 성능 최적화하기 2

1. 지난Linux환경에서 SSD 성능 최적화하기에 이어지는 글입니다. Btrfs와 EXT4를 비교하면서 ‘EXT4와 Btrfs가 비슷한 성능을 보여준다’고 지난 글에서 정리하였습니다. 그렇지만 조건이 하나 붙으면 완전히 다른 결과가 나옵니다. Btrfs의 성능을 압축기능을 사용했을 때와 아닐 때 그리고 압축알고리즘을 LZO와 GZip을 사용했을 때를 서로 비교해도록 하죠. LZO를 사용하면 아주 탁월한 성능을 보여줍니다.

Linux환경에서 SSD 성능 최적화하기

1. SSD가 대세입니다. SSD의 가격이 낮아지면서 속도를 원하는 일반 이용자들도 SSD를 사용합니다. CPU나 Ram을 늘리기 보다 SSD를 적용하면 체감속도는 휠씬 빠르다고 합니다. Low Latency를 원하는 트레이더들의 경우도 SSD는 기본입니다. 처음 SSD를 바라본 시각은 HDD의 대체재였습니다. HDD 보다 SSD를 이용하면 저장매체가 다르므로 당연히 빠릅니다. 딱 여기까지만 생각했습니다. 그런데 NHN 개발자 블로그에 올란 온 글을 보니 더 가야할 길이 있었습니다. SSD는 소프트웨어…
Read more

리눅스의 시간동기화와 HyperThreading

1. 지난 8월 리눅스 기반의 트레이딩시스템에서 시간동기화를 어떻게 해야 하는지를 다루었습니다. 트레이딩시스템을 위한 시간 동기화 이 때 STAC에서 발표한 자료 때문에 Symmetricom에 메일을 보냈다고 했었습니다. 이후 아무런 소식이 없었는데 어제 HFT Review가 white Paper를 받으라고 메일을 보냈네요. 지난 번 글에서 자세히 소개하지 못한 내용을 글로써 자세히 정리하고 있습니다.

Mutex Vs Spinlock

1. 어플리케이션에서 레이턴시를 줄이는 일은 그리 간단하지 않습니다. 예를 들어 Multi-Threaded Trading Application을 구현할 때 Lock-free Algorithm을 사용하는 경우가 많다고 하였습니다. 전략의 복수이벤트처리 그렇지만 Lock-Free Algorithm이 전가의 보도(傳家寶刀)처럼 Latency를 확 줄여주지 않습니다. 반대로 많은 프로그램들은 쓰레드동기화를 위하여 Lock을 사용합니다. 대표적인 방법은 Mutex입니다. Mutex를 사용한다고 해서 무조건 느린 어플리케이션이라고 할 수도 없습니다. 목표로 하는 업무와 하드웨어환경에 따라 최적화한 방법을 꾸준히 찾아내는…
Read more