목록전체 글 (165)
Pure Software Engineer :)
LLC(Last Level Cache)는 temporal locality가 낮다는 특징에서 출발하여, LLC에서는 temporal locality에 좋은 성능을 보이는 LRU보다 다른 접근 방법이 필요하다는 관점에서 출발한다. cache set에 있는 block 들을 referenced list, non-referenced list 2개로 나눠서 predictor 를 통해 way 를 2개의 list로 나누고 replacement 가 일어날때 마다 predictor와 현재 list에 있는 way의 수를 비교해서 predictor보다 많은 way를 가지는 list에서 victim 을 선정한다. thrashing, scan resistant한 특성을 가지며 predictor를 통해 bypass 또한 가능하다고..
리눅스 gnu gcc 로 openmp c 프로그램 컴파일 하는 방법 $ gcc -o hello hello.c -fopenmp (-lgomp 옵션으로도 컴파일은 되나 스레드 생성이 안됐음(?)) $ export OMP_NUM_THREADS=2 // 생성할 스레드 숫자를 환경변수로 설정 할 수 있다. (c code 안에서 #pragma omp parallel num_threads(8) 이런식으로도 가능) - reference http://www.dartmouth.edu/~rc/classes/intro_openmp/compile_run.html
리눅스에서 텍스트 파일 스펠링 검사할때 유용한 도구 예를들어, vi를 사용해서 tex 문서를 작성하는데 스펠링 검사를 할때 유용하다. $ aspell check [filename] OS 기본언어가 한글일 경우 다음과 같은 에러가 떳다. Error: No word lists can be found for the language "ko_KR". lang옵션을 통해 해결한다. $ aspell --lang=en_US check [filename] referenceshttp://afnastica.tistory.com/395 ===================================================================파일 검색find -name "*.pl" -ls // 현재 디렉토리에서 ..
import certificate dir(certificate) // 해당 모듈(certificate) 안에 뭐 있는지(interface) 보여줌 =========================================================== /usr/local/lib/python2.6/dist-package 파이썬에서 사용할 라이브러리 위치
second, microsecond 단위로 측정이 가능하다. 먼저 헤더를 추가한다. #include 사용할 함수 및 구조체 int gettimeofday(struct timeval*tv, struct timezone* tz); struct timeval { time_ttv_sec;// seconds suseconds_ttv_usec;// microseconds }; 변수 선언 struct timeval before, after; 측정 방법 gettimeofday(&before, NULL); solve(); // 성능을 측정할 구간 gettimeofday(&after, NULL); after.tv_sec-before.tv_sec // second after.tv_usec-before.tv_usec // m..
[jwchoi@tc5 trousers-0.2.9.1]$ tpm_version tpm_version: error while loading shared libraries: libtspi.so.1: cannot open shared object file: No such file or directory 위의 예처럼 어떤 ELF format 을 실행할때 shared library를 못찾는 경우가 생긴다. $ which tpm_version // tpm_version 이 있는 경로를 알려줌 which 를 통해 얻은 경로를 바탕으로 다음을 실행 $ ldd /usr/local/sbin/tpm_version // 해당 파일이 사용하는 shared library들을 나열 [jwchoi@tc5 trousers-0.2.9.1..
Simultaneous multithreading, often abbreviated as SMT, is a technique for improving the overall efficiency of superscalar CPUs with hardware multithreading. SMT permits multiple independent threads of execution to better utilize the resources provided by modern processor architectures. More detail... Multithreading is similar in concept to preemptive multitasking but is implemented at the thread..
환경 - Hypervisor : Xen 4.0.1 - Linux : Ubuntu 10.04 server 설치순서 1. Ubuntu 10.04 server 설치// xen설치를 위한 packages설치$ sudo apt-get install bin86 build-essential zlib1g-dev python-dev libncurses5-dev libssl-dev openssl bridge-utils iproute patch mercurial gettext gawk texinfo xorg-dev bzip2 libsdl-dev uuid-dev bcc iasl // python symbolic link 생성$ sudo ln -s /usr/lib/pyuthon2.6/dist-packages /usr/lib/p..