Tech/Computer
-
Transactional Memory #2Tech/Computer 2014. 6. 13. 22:11
무려 2013년 11월에 Transactional Memory에 대한 포스팅을 한 적이 있다. 이 때는, Parallel Computing에서 일반적으로 사용되는 Lock 방식의 메모리 관리기법의 단점에 대해 알아보았다. 대표적으로 3가지를 들 수 있다. Dead Lock: 같은 자원에 접근하는 Thread가 서로 멈추는 문제 Priority Inversion: Thread의 Priority가 지켜지지 않는 문제 Convoying: Lock 중인 Thread가 System call을 받으면 기다리는 모든 Thread가 멈추는 문제 위 3가지의 구조적 문제점 이 외에도, Shared resource에 대한 Lock을 위해 Kernel Instruction이 수시로 호출되면서 속도가 저하되는 문제 정작 Tr..
-
AVCCAM Restorer 이용해서 MTS, M2TS 복원하기Tech/Computer 2014. 3. 27. 14:00
최근에 Sony 캠으로 영상을 촬영하고 편집할 일이 있었다. 촬영 후 자연스럽게 메모리의 동영상 파일(MTS 확장자를 가진다)만 USB에 옮겨담았는데, 나중에 편집하려고 열어보니 Final cut pro 같은 동영상 편집 프로그램에서 불러올 수가 없었다! 메모리 카드의 폴더 구조도 동영상에 대한 정보를 포함하고 있기 때문에, MTS 파일만 가져와서는 불러올 수가 없다고 한다. 즉, 동영상 편집 프로그램에서 불러오려면 캠을 직접 연결해서 Import하는 것이 가장 좋다. 하지만 상황이 여의치않아 MTS 파일만 달랑 남았을 경우에는 Panasonic에서 제공하는 AVCCAM Restorer를 이용해서 복원해도 된다. 여기에서 다운받을 수 있다. 그런데, 주의할 점은 mts, m2ts의 파일명이 5자리 숫자로..
-
Retina Display에서 MATLAB 선명하게 보기Tech/Computer 2014. 3. 18. 22:26
예전에 레티나 디스플레이에서 MATLAB2013b를 사용할 때, 레티나 적용이 되지않아 뿌옇게 나온다고 포스팅 한 적이 있다. (Matlab R2013b는 왜 Retina Display를 지원하지 않나?) 얼마전에 출시된 MATLAB2014a에서도 여전히 해당 문제는 해결되지 않았는데, 최근 테스트를 해보니 jdk1.7.0_45 버젼에서는 Retina display에서 문제없이 잘 동작한다. 아래의 순서로 MATLAB built-in java를 새로운 JAVA로 바꿔치기하면 된다. MATLAB과 연결될 최신 버젼의 JAVA JDK가 설치되어있는지 확인해야한다. 내가 사용하고 있는 JAVA 버젼은 1.7.0_45였다. JRE의 위치를 확인해보자. 아마 대부분의 맥 유저는 아래 경로에 위치할 것이다. /Li..
-
Matlab R2013b는 왜 Retina Display를 지원하지 않나?Tech/Computer 2013. 11. 19. 10:18
Mathworks Matlab R2013a는 Retina Display를 지원했었다. 그런데, R2013b는 최신작임에도 불구하고 Retina Display를 지원하지 않는다. 무슨 일일까? 바로 Java때문이다. R2013a까지는 OS X에 같이 포함되는 Java를 사용해왔었다. 그런데, R2013b부터 Mathworks는 OS X에 딸려오는 번들 Java 대신 자체적으로 Java 7을 포함하고 설치된다. 이렇게 된 데는 OS X에 함께 설치되는 Java의 지원이 워낙 더디게 이루어진다는 이유도 있다. 아무튼 R2013b에서 함께 설치되는 Java 7u11은 Retina display가 지원되지 않는다. (왜일까? Sun의 해당 연구팀에 Retina display가 없다는 슬픈 이유가…. 출처: JDK..
-
Transactional Memory #1Tech/Computer 2013. 11. 12. 14:58
들어가는 말 : Transactional Memory은 왜 등장하게 되었나? Parallel Computing은 Single Core의 한계를 극복하는 차세대 컴퓨팅 기술이지만, 이러한 컴퓨터 시스템 위에서 동작하는 Parallel Programming은 아직 원론적인 문제로 고통받고 있다. 바로 공유되는 자원을 어떻게 관리하는가 하는 문제다. Parallel Programming에서 공유자원은 어떻게 동기화하는가? 똑같은 메모리를 이 Thread도 쓰고, 저 Thread도 쓴다면 누구 장단에 따라 움직여야하는가? 먼저 잡은 놈이 임자라고, 먼저 접근한 Thread에게 우선권을 주면 될 것 같지만, 모든게 Parallel하게 돌아가는 시스템에서는 이 "누가 먼저"를 알아내기가 쉽지 않다. 중앙에 막강한 ..
-
OS X Mail이 새로운 메일을 읽어오지 못할 때Tech/Computer 2013. 8. 6. 13:49
나는 OS X에서 기본으로 제공하는 Mail 앱을 사용하고 있는데, 한번씩 새로운 메일을 읽어오지 못할 때가 있다. 메일 보내기는 문제 없는 걸로 봐서, 메일함 업데이트에 관련한 캐시 버그가 있는 것 같은데, 이를 해결하려면 OfflineCache를 지워줌으로써 해결될 때가 많다. mail.app을 종료 ~/Library/Mail/V2/IMAP-account@mail.com/ 사용자 이름에 따라, 그리고 메일 앱 버젼에 따라 달라질 수 있는데 폴더가 복잡하게 많은 게 아니니까 금방 찾아갈 수 있다. 이동한 위치에서 숨김 폴더로 .OfflineCache가 있는데, 이걸 삭제한다. mail.app을 다시 시작하면 정상적으로 받아온다. 무언가를 삭제하기 때문에 메일이 소실되는 게 아닌가 우려할 수 있지만 그런..
-
Git, Mercurial를 통한 소스 코드의 버젼 관리가 무료로 가능한 BitbucketTech/Computer 2013. 6. 21. 05:04
프로그래밍을 하다보면 소스코드를 어떻게 관리할 것인가에 대해 한번쯤 고민해보게 된다. 가장 오래되고 유명한 SVN 부터 시작하여 GIT, Mercurial에 이르기까지 그 방법도 다양하다. 몇가지 방법을 써보았는데, 개인 SVN 서버를 구축하는 방법: 이전에 CollabNet Subversion Edge라는 프로그램을 이용해서 SVN 서버를 운영해본 적이 있는데, 아무래도 가까이 위치하다보니 속도도 빠르고 용량도 사실상 무한(필요한 만큼 내가 넣으면 된다.)이라 가장 편리하다. 하지만 SVN 서버가 설치된 컴퓨터의 네트워크를 지속적으로 웹호스팅을 해야하는데 이게 문제다. 네이버 개발자 센터: 여러모로 편리하지만 어쩐 이유에서인지 많이 사용하지 않았다. 큰 이유는 아무래도 해외에 있는 사람들과 협업 또는 ..
-
Alfred에 투명스킨을 씌우자.Tech/Computer 2013. 6. 21. 04:02
메가 서포터로 등록해서 잘 써오고 있는 Alfred. 간만에 스킨을 바꿔볼까 싶어 포럼에 들어갔더니, transparent한 기능을 추가하는 트윅이 가장 인기다. (http://www.alfredforum.com/topic/289-cheeky-little-transparency-blur-hack-in-b78-now-available/) Alfred를 종료하고, terminal에 아래 명령어를 입력하면 된다. defaults write com.runningwithcrayons.Alfred-2 experimentalBlur -float 3.0 값은 1.0-5.0 사이로 주면 된다. 다시 시작하면 어쩐 일인지 전혀 투명효과가 보여지지 않는데 이건 배경 스킨의 opacity가 전혀 설정되지 않았기 때문이다. 기..