역시나 자바스크립트…

typos 형님의 포스팅을 보다가, 다시금 생각나서 주절대 본다. 형님 말씀대로 예나 지금이나 크롤러의 가장 큰 지향점은 자바스크립트 처리인거 같다. 뭐 어제인가 나온 기사에서도 자바스크립트 처리와 인증관련 문제를 IE를 사용해 처리한다고 한다. 다시금 자바스크립트 처리에 대한 이야기가 나오는구나. 자바스크립트 관련 문제는 이쪽 일을 해본 사람들에게는 오래된 주제이다. 나도 이것 때문에 모질라 재단의 spider monkey를 사용해보기 까지 […]

계속 읽기

Linear classification.

어제 모임이 있어서 갔다가 요즘 블로깅 뜸하다는 이야기를 친구에게 들었다. 사실 요즘에 정말 바쁘다. 회의도 많고 일도 만만치 않고…회의가 많다는건 참여하고 있는 프로젝트가 많다는 걸 의미하니.. 회의를 줄여야만이 일이 줄일수 있을거 같다는 생각이 좀 든다.그래서 회의를 가급적이면 피해볼라고 노력중이다. ㅋㅋ 머리속에 들어있는 생각중에 가장 큰 것은 랭킹이다. 랭킹 디자인을 하고 함수를 만드는 일을 하고 있는데 […]

계속 읽기

개발자여서.

세상이 이제는 단순히 개발만을 하는 개발자를 원하지는 않는거 같다는 생각이 든다. 무어의 법칙에 기대어 사는 개발자에게 멀티코어 CPU는 다른 개발 방식을 요구하고 있고, web2.0은 Data의 홍수 속에서 빠르고 정확한 정보를 뽑아내야 하는지 그 방법과 구현을 개발자에게 요구하고 있다. 위의 분위기를 둘다 느끼게끔 해주는 주변 환경이 나를 항상 흥분하게 만든다. 이쪽 세상…. 참으로 재미있는 세상이다.

계속 읽기

멀티코어 CPU에서 병렬 처리를 위한 몇몇 가지..

Exploiting Parallelism with Multi-core Technologies  위 강좌에서 잘 나온다. 3가지 멀티코어 병렬 처리를 위한 방법들.. 1. 새로운 언어를 사용한다. ex) Cilk, NESL, Haskel, Erlang, Fortress,…..2. 랭귀지 익스텐션을 사용한다. ex) OpenMP – 이해하기 쉽지만, 또 다른 컴파일러가 필요하다.3. 라이브러리 : POOMA, Hood ,…. – 사용하기 편하다. – 특정 도메인에만 적용 가능하다. 그래서 결론은 Intel Threading Building Blocks 이라는 말인인데, […]

계속 읽기

Query -Url 연결 알고리즘

어떤곳에서는 저런걸 바로가기라고 표현하기도 한다. Query로그와 Url로그를 보고 그 쌍을 학습셋으로 집어 넣어서 Query Url에 대한 신경망(neural network)을 만드는 작업이였는데, 예전에 만들어본 Neural Network 프로그램과 약간 다르게 접근해서 매우 흥미로웠다. Backpropagation algorithm을 사용한건 동일 했지만 Hidden Layer의 갯수를 입력된 Query로그를 사용해서 의미단위로 쪼개서 그 쌍을 가지고 Hidden Layer를 만들었다. 그러니까… “주니어 네이버”라는 쿼리가 들어오면 {“네이버” […]

계속 읽기

CouchDB

CouchDB 란다. 아직 인큐베이터에 있는데…. 이것도 유심히 볼 만 할거 같다. Erlang OTP 만 섭렵하면 이걸 점령해 보는것도 어렵지는 않을거 같은데…

계속 읽기

Erlang kpmap 함수

pmap을 개선해서 kpmap함수를 만들어 봤다. (함수명은 내가 직접 지어본거다. ^^;) kpmap 함수는 …기존의 pmap함수가 입력되는 리스트 원소 갯수만큼 process를 만들어 버리는 단점을 가지고 있기 때문에 마지막 인수로 k라는 인수를 두어 k개의 process만을 만들어 처리를 하게끔 하는 함수이다. pmap 함수에서 내가 사용했던 작업이 1000여개의 파일을 열어 텍스트 처리를 하는 함수였는데, 1000여개의 함수를 여는 1000여개의 process를 만들기가 […]

계속 읽기

쿼드코어에서 병렬 프로세싱 실험

사실 요즘 회사서 리서치 용으로 몇가지 간단한 파일 처리 프로그램을 만들었는데, 이 리서치 기간에 Erlang으로 그 프로그램을 만들었다. 뭐 완전한 프로그램으로는 Erlang으로 처음 만드는 것이라서 시행착오도 많이 했지만 그럭저럭 잘 마무리를 지은거 같다. 다 코딩하고 프로파일링 후 이 Erlang 코드의 어느 특정 부분에서 처리 시간이 굉장히 오래 먹는다는걸 알았다. 바로 텍스트 정규식을 처리해 그것의 중복검사까지 […]

계속 읽기

Erlang으로 만든 웹서버 스트레스 테스트

근 1주일동안 Erlang에 푹 빠져 있는데, 여기에 대한 흥미로운 자료들을 올려본다. 아래는 Erlang으로 구현한 webserver인 Yaws와 apache webserver간의 스트레스 테스트다. 아주 유명한 테스트라고 하던데 이제야 봤다.apache 웹서버처럼  어떤 상황에서든지 버텨야 하는 강건한 어플리케이션을 만들 기회가 있을지 없을지 모르겠지만, 아래의 결과를 빌어 Erlang의 파워를 보자면 매력이 장난 아님을 느낄 수 있을 것이다. 스트레스 테스트 요약을 하자면, […]

계속 읽기

Erlang으로 구현해본 멀티 코어 CPU용 MapReduce

사실 대부분 코드의 본체는 Programming Erlang 의 예제코드에서 얻었고 간단하게 멀티 코어용 MapReduce 모듈을 구현한것을 보고 감동을 받아서 조금 고쳐 봤다. 책에서는 Reducer 하나만을 생성해서 결과를 combine 했는데 이 모듈에서는 Reducer 갯수를 조절할 수 있게 해놓았고, Hadoop과 유사하게 Key, Values 쌍으로 소팅해서 결과를 가져오게 했다.Hadoop처럼 대용량 파일을 모두 메모리에 올릴 수 없어 파일로 쓸수 밖에 […]

계속 읽기