Linux/Ubuntu2012. 6. 7. 07:56
rutorrent는 rtorrent의 webUI GUI frontend이다.
간단하게 토런토 프로그램을 웹서버를 통해 원격에서 볼수있게 해주는 역활을 한다.

패키지 설치 및 삭제
$ sudo apt-get remove libxmlrpc-c*
$ sudo apt-get install subversion gcc apache2 curl libcurl4-openssl-dev automake autoconf texinfo libapache2-mod-scgi build-essential libtool openssl libsigc++-2.0-dev libncurses-dev libcppunit-dev php5

xmlrpc-c 다운로드 및 설치(svn)
$ svn co http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c
$ cd xmlrpc-c
$ ./configure
$ make
$ sudo make install

왜 하는진 모르겠지만 libxmlrpc 설치
$ sudo apt-get install libxmlrpc-c3-dev

아파치 모듈 삽입
$ sudo a2enmod scgi

아파치 환경설정 추가
$sudo vi /etc/apache2/httpd.conf
SCGIMount /RPC2 127.0.0.1:5000

아파치 재시작
$ sudo service apache2 restart

rtorrent 및 php5-cgi 설치
$ sudo apt-get install rtorrent php5-cgi

데몬을 위한 screen 프로그램 설치
$ sudo apt-get install screen
 
[링크 : http://s990we.com/wordpress/2010/10/install-xmlrpc-c-libtorrent-rtorrent-and-rutorrent-from-svn-2/ ] 

rtorrent에서 세션용으로 저장할 디렉토리를 생성해주고
$ cd ~
$ mkdir .rtsession

그리고 rtorrent 환경설정 파일에 각종 정보를 수정해 준다.
$ cat .rtorrent.rc 
# This is an example resource file for rTorrent. Copy to
# ~/.rtorrent.rc and enable/modify the options as needed. Remember to
# uncomment the options you wish to enable.

# Maximum and minimum number of peers to connect to per torrent.
#min_peers = 40
#max_peers = 100

# Same as above but for seeding completed torrents (-1 = same as downloading)
#min_peers_seed = 10
#max_peers_seed = 50

# Maximum number of simultanious uploads per torrent.
#max_uploads = 15

# Global upload and download rate in KiB. "0" for unlimited.
#download_rate = 0
#upload_rate = 0

# Default directory to save the downloaded torrents.
directory = /home/minimonk/다운로드

# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
session = /home/minimonk/.rtsession
scgi_port = localhost:5000

# Watch a directory for new torrents, and stop those that have been
# deleted.
#schedule = watch_directory,5,5,load_start=./watch/*.torrent
#schedule = untied_directory,5,5,stop_untied=

# Close torrents when diskspace is low.
#schedule = low_diskspace,5,60,close_low_diskspace=100M

# Stop torrents when reaching upload ratio in percent,
# when also reaching total upload in bytes, or when
# reaching final upload ratio in percent.
# example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
#schedule = ratio,60,60,"stop_on_ratio=200,200M,2000"

# The ip address reported to the tracker.
#ip = 127.0.0.1
#ip = rakshasa.no

# The ip address the listening socket and outgoing connections is
# bound to.
#bind = 127.0.0.1
#bind = rakshasa.no

# Port range to use for listening.
#port_range = 6890-6999

# Start opening ports at a random position within the port range.
#port_random = no

# Check hash for finished torrents. Might be usefull until the bug is
# fixed that causes lack of diskspace not to be properly reported.
#check_hash = no

# Set whetever the client should try to connect to UDP trackers.
#use_udp_trackers = yes

# Alternative calls to bind and ip that should handle dynamic ip's.
#schedule = ip_tick,0,1800,ip=rakshasa
#schedule = bind_tick,0,1800,bind=rakshasa

# Encryption options, set to none (default) or any combination of the following:
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
#
# The example value allows incoming encrypted connections, starts unencrypted
# outgoing connections but retries with encryption if they fail, preferring
# plaintext to RC4 encryption after the encrypted handshake
#
# encryption = allow_incoming,enable_retry,prefer_plaintext

# Enable DHT support for trackerless torrents or when all trackers are down.
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
# The default is "off". For DHT to work, a session directory must be defined.
# dht = auto

# UDP port to use for DHT. 
# dht_port = 6881

# Enable peer exchange (for torrents not marked private)
#
# peer_exchange = yes

#
# Do not modify the following parameters unless you know what you're doing.
#

# Hash read-ahead controls how many MB to request the kernel to read
# ahead. If the value is too low the disk may not be fully utilized,
# while if too high the kernel might not be able to keep the read
# pages in memory thus end up trashing.
#hash_read_ahead = 10

# Interval between attempts to check the hash, in milliseconds.
#hash_interval = 100

# Number of attempts to check the hash while using the mincore status,
# before forcing. Overworked systems might need lower values to get a
# decent hash checking rate.
#hash_max_tries = 10 

rutorrent를 설치해서 하는데 영 먼가 안되고 배를 째는데
[22.03.2011 17:42:45] WebUI started.
[22.03.2011 17:42:45] JS error: [http://cinemaverite.net/rutorrent/ : 1] Uncaught SyntaxError: Unexpected token <
[22.03.2011 17:42:45] Bad response from server: (200 [parsererror,getuisettings]) <?php require_once( &#39;util.php&#39; ); $s = @file_get_contents(getSettingsPath()."/uisettings.json"); if($s==false) $s = &#39;{}&#39;; if(!ini_get("zlib.output_compression")) header("Content-Length: ".strlen($s)); header("Content-Type: application/json; charset=UTF-8"); echo $s; ?>

[링크 : http://forums.rutorrent.org/index.php?topic=701.0

혹시나 해서 json이 문제인가 해서 php5-json을 해보니 php5-common으로 이미 설치 된 녀석이고
php5-cgi를 설치하고 나니 문제가 없이 되는 듯한 느낌..

그리고 그냥 실행하면 접속할 수 없다고 포트번호 확인하라는데
콘솔하나 열고 그냥 rtorrent 실행하면 문제없이 작동한다(보기에는 그렇지만)
서비스용 데몬 스크립트를 일단 똭~
사용자 계정만 수정해주고 rtorrent 환경파일만 수정해주면 될 듯?
(아직까지 데몬 스크립트는 실행이 안됨 ㅠ.ㅠ)
#!/bin/bash
#############
###<Notes>###
#############
# This script depends on screen.
# For the stop function to work, you must set an
# explicit session directory using absolute paths (no, ~ is not absolute) in your rtorrent.rc.
# If you typically just start rtorrent with just "rtorrent" on the
# command line, all you need to change is the "user" option.
# Attach to the screen session as your user with 
# "screen -dr rtorrent". Change "rtorrent" with srnname option.
# Licensed under the GPLv2 by lostnihilist: lostnihilist _at_ gmail _dot_ com
##############
###</Notes>###
##############

#######################
##Start Configuration##
#######################
# You can specify your configuration in a different file 
# (so that it is saved with upgrades, saved in your home directory,
# or whatever reason you want to)
# by commenting out/deleting the configuration lines and placing them
# in a text file (say /home/user/.rtorrent.init.conf) exactly as you would
# have written them here (you can leave the comments if you desire
# and then uncommenting the following line correcting the path/filename 
# for the one you used. note the space after the ".".
# . /etc/rtorrent.init.conf


#Do not put a space on either side of the equal signs e.g.
# user = user 
# will not work
# system user to run as (can only use one)
user="minimonk"

# system user to run as # not implemented, see d_start for beginning implementation
# group=$(id -ng "$user")

# the full path to the filename where you store your rtorrent configuration
# must keep parentheses around the entire statement, quotations around each config file
#config=("$(su -c 'echo $HOME' $user)/.rtorrent.rc")
# Examples:
config=("/home/minimonk/.rtorrent.rc")
# config=("/home/user/.rtorrent.rc" "/mnt/some/drive/.rtorrent2.rc")
# config=("/home/user/.rtorrent.rc"
# "/mnt/some/drive/.rtorrent2.rc"
# "/mnt/another/drive/.rtorrent3.rc")

# set of options to run with each instance, separated by a new line
# must keep parentheses around the entire statement
#if no special options, specify with: ""
options=("")
# Examples:
# starts one instance, sourcing both .rtorrent.rc and .rtorrent2.rc
# options=("-o import=~/.rtorrent2.rc")
# starts two instances, ignoring .rtorrent.rc for both, and using
# .rtorrent2.rc for the first, and .rtorrent3.rc for the second
# we do not check for valid options
# options=("-n -o import=~/.rtorrent2.rc" "-n -o import=~/rtorrent3.rc")

# default directory for screen, needs to be an absolute path
base=$(su -c 'echo $HOME' $user)

# name of screen session
srnname="rtorrent"

# file to log to (makes for easier debugging if something goes wrong)
logfile="/var/log/rtorrentInit.log"
#######################
###END CONFIGURATION###
#######################

PATH=/usr/bin:/usr/local/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin
DESC="rtorrent"
NAME=rtorrent
DAEMON=$NAME
SCRIPTNAME=/etc/init.d/$NAME

checkcnfg() {
  exists=0
  for i in `echo "$PATH" | tr ':' '\n'` ; do
    if [ -f $i/$NAME ] ; then
      exists=1
      break
    fi
  done
  if [ $exists -eq 0 ] ; then
    echo "cannot find $NAME binary in PATH: $PATH" | tee -a "$logfile" >&2
    exit 3
  fi
  for (( i=0 ; i < ${#config[@]} ;  i++ )) ; do
    if ! [ -r "${config[i]}" ] ; then
        echo "cannot find readable config ${config[i]}. check that it is there and permissions are appropriate"  | tee -a "$logfile" >&2
        exit 3
    fi
    session=$(getsession "${config[i]}")
    if ! [ -d "${session}" ] ; then
        echo "cannot find readable session directory ${session} from config ${config[i]}. check permissions" | tee -a "$logfile" >&2
        exit 3
    fi
  done
}

d_start() {
  [ -d "${base}" ] && cd "${base}"
  stty stop undef && stty start undef
  #su -c "screen -S "${srnname}" -X screen rtorrent ${options} 2>&1 1>/dev/null" ${user} | tee -a "$logfile" >&2
  su -c "screen -S "${srnname}" -X screen rtorrent ${options} " ${user} | tee -a "$logfile" >&2
  # this works for the screen command, but starting rtorrent below adopts screen session gid
  # even if it is not the screen session we started (e.g. running under an undesirable gid
  #su -c "screen -ls | grep -sq "\.${srnname}[[:space:]]" " ${user} || su -c "sg \"$group\" -c \"screen -fn -dm -S ${srnname} 2>&1 1>/dev/null\"" ${user} | tee -a "$logfile" >&2
  for (( i=0 ; i < ${#options[@]} ; i++ )) ;  do
    sleep 3
    #su -c "screen -S "${srnname}" -X screen rtorrent ${options[i]} 2>&1 1>/dev/null" ${user} | tee -a "$logfile" >&2
    su -c "screen -S "${srnname}" -X screen rtorrent ${options[i]} " ${user} | tee -a "$logfile" >&2
  done
}

d_stop() {
  for (( i=0 ; i < ${#config[@]} ; i++ )) ; do
    session=$(getsession "${config[i]}")
    if ! [ -s ${session}/rtorrent.lock ] ; then
        return
    fi
    pid=$(cat ${session}/rtorrent.lock | awk -F: '{print($2)}' | sed "s/[^0-9]//g")
    # make sure the pid doesn't belong to another process
    if ps -A | grep -sq ${pid}.*rtorrent ; then
        kill -s INT ${pid}
    fi
  done
}

getsession() { 
    session=$(cat "$1" | grep "^[[:space:]]*session[[:space:]]*=" | sed "s/^[[:space:]]*session[[:space:]]*=[[:space:]]*//" )
    #session=${session/#~/`getent passwd ${user}|cut -d: -f6`}
    echo $session
}

checkcnfg

case "$1" in
  start)
    echo -n "Starting $DESC: $NAME"
    d_start
    echo "."
    ;;
  stop)
    echo -n "Stopping $DESC: $NAME"
    d_stop
    echo "."
    ;;
  restart|force-reload)
    echo -n "Restarting $DESC: $NAME"
    d_stop
    sleep 1
    d_start
    echo "."
    ;;
  *)
    echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
    exit 1
    ;;
esac

exit 0

[링크 : http://ubuntuforums.org/showthread.php?t=859543]  

[링크 : http://code.google.com/p/rutorrent/wiki/Installation ]
[링크 : http://code.google.com/p/rutorrent/wiki/WebSERVER ]
[링크 : http://code.google.com/p/rutorrent/wiki/Config ] 
[링크 : http://www.howtoforge.com/installing-cherokee-with-php5-and-mysql-support-on-ubuntu-9.04 ] cherokee 
Posted by 구차니
프로그램 사용/nfs2012. 6. 6. 18:28
kernel-nfs-server 패키지를 설치하지 않고 nfs로 붙이려고 하니
/proc/filesystem에 nfs를 지원하다고 나옴에도 불구하고 붙어지질 않는다.
그런 이유로 nfs를 mount 하기 위해서는  kernel-nfs-server 패키지를 설치해야한다
(/etc/exports를 비워두거나 서비스를 실행하지 않도록 설정필요)

mount: wrong fs type, bad option, bad superblock on server:/path,
       missing codepage or helper program, or other error
       (for several filesystems (e.g. nfs, cifs) you might
       need a /sbin/mount.<type> helper program)
       In some cases useful info is found in syslog - try
       dmesg | tail  or so 

Posted by 구차니
Programming/openCL & CUDA2012. 6. 6. 08:18
예제파일 따라한다고 512 * 65535 개의 쓰레드를 계산하게 하는 int형 배열을 무려 3개나 할당!
4byte * 512 * 65535 = 대략 128MB?

아무튼 이걸 3개를 할당하니 378MB ..
근데 ION에다가 256MB만 할당해 놓은 시스템에서 저걸 돌리니
정상처럼 돌아가는데 결과는 전부 쓰레기값(전부 결과가 0이 나옴 -_-)
그리고 미친척(!) 7번 정도 실행하니 X윈도우까지 맛이 가서 ssh로 재시작 시키게 하는 센스 OTL



결론 : 메모리 사용량은 확실히 계산하고 malloc 해주자! 

'Programming > openCL & CUDA' 카테고리의 다른 글

cudaMalloc 시작 위치?  (0) 2012.07.11
cudemMemcpy()  (0) 2012.06.07
nvcc 는 int main()을 좋아해  (0) 2012.06.05
cuda 메모리별 접근 소요 클럭 사이클  (0) 2012.06.05
ubuntu 에서 vectorAdd 직접 컴파일 하기  (0) 2012.06.03
Posted by 구차니
Programming/openCL & CUDA2012. 6. 5. 22:39
심심(?)해서 void main()으로 해봤더니 요따구 에러 발생 -_-

vectorAdd.cu(11): warning: return type of function "main" must be "int"
vectorAdd.cu(11): warning: return type of function "main" must be "int"
vectorAdd.cu:11:11: error: ‘::main’ must return ‘int’ 

컴파일은 문제없다가 링킹에서 배째는 기분인데 -_-
Posted by 구차니
프로그램 사용/VLC2012. 6. 5. 21:26
설정파일의 경로는 아래와 같다.

/etc/vlc/lua/.hosts

2009/12/08 - [프로그램 사용/VLC] - VLC 웹 인터페이스 원격지에서 안될경우

'프로그램 사용 > VLC' 카테고리의 다른 글

VLC RTSP 데이터 덤프하기?  (0) 2013.02.26
vlc를 이용한 html rtsp 스트리밍 예제  (2) 2013.01.11
VLC codebase axvlc.cab  (2) 2011.11.18
VLC classid  (0) 2011.11.18
VLC로 웹상에서 RTSP 비디오 띄우기  (0) 2011.11.17
Posted by 구차니
Programming/openCL & CUDA2012. 6. 5. 07:38
Nvidia cuda 공식 문서를 찾아보니, 메모리별 소요 클럭에 대한 내용이 자세히 나온다.

local memory 나 device memory 와 같이 off-chip memory(그래픽 카드에 내장되지 않은)는 400~800 클럭에 접근하고
shared memory나 register와 같이 on-ship memory(그래픽 카드에 내장된)는 10~20 클럭 정도에 접근이 가능하다.
constant memory는 2.0 에서 부터는 1회에 대해서 400~800 클럭이고, caching이 되면서 10~20 클럭에 읽어올 수 있다.

다르게 말하면 매우 빈번하게(클럭 빈도로는 40회 이상?) 읽어오는 데이터의 경우에는
무조건 shared memory에 읽어와서 빠르게 읽는게 전체 실행 속도에 유리할 것으로 보인다.
(읽어와서 다시 저장을 해야 한다면 80회 이상으로 늘어날지도?)

5.2  Maximize Utilization 
5.2.3  Multiprocessor Level 

If all input operands are registers, latency is caused by register dependencies, i.e. some of the input operands are written by some previous instruction(s) whose execution has not completed yet. In the case of a back-to-back register dependency  (i.e. some input operand is written by the previous instruction), the latency is equal to the execution time of the previous instruction and the warp schedulers must schedule instructions for different warps during that time. Execution time varies  depending on the instruction, but it is typically about 22 clock cycles for devices of compute capability 1.x and 2.x and about 11 clock cycles for devices of compute capability 3.0, which translates to 6 warps for devices of compute capability 1.x and  22 warps for devices of compute capability 2.x and higher (still assuming that warps execute instructions with maximum throughput, otherwise fewer warps are needed).  For devices of compute capability 2.1 and higher, this is also assuming enough instruction-level parallelism so that schedulers are always able to issue pairs of instructions for each warp. 

 If some input operand resides in off-chip memory, the latency is much higher: 400 to 800 clock cycles. The number of warps required to keep the warp schedulers busy during such high latency periods depends on the kernel code and its degree of  instruction-level parallelism. In general, more warps are required if the ratio of the number of instructions with no off-chip memory operands (i.e. arithmetic instructions most of the time) to the number of instructions with off-chip memory  operands is low (this ratio is commonly called the arithmetic intensity of the program). If this ratio is 15, for example, then to hide latencies of about 600 clock cycles, about 10 warps are required for devices of compute capability 1.x and about  40 for devices of compute capability 2.x and higher (with the same assumptions as in the previous paragraph).

5.3
Maximize Memory Throughput
The first step in maximizing overall memory throughput for the application is to minimize data transfers with low bandwidth.
That means minimizing data transfers between the host and the device, as detailed in Section 5.3.1, since these have much lower bandwidth than data transfers between global memory and the device.
That also means minimizing data transfers between global memory and the device by maximizing use of on-chip memory: shared memory and caches (i.e. L1/L2 caches available on devices of compute capability 2.x and higher, texture cache and constant cache available on all devices).



[출처 : CUDA_C_Programming_Guide.pdf]

Posted by 구차니
wol 은 유선랜에서 원격부팅을 지원하고
wowlan은 wol을 무선랜으로 확장한다
그리고 PME는 Power Management Event의 약자로
PCI를 통해 wol신호를 보내는 것을 의미한다

[링크 :  http://en.wikipedia.org/wiki/Power_Management_Event ]

'하드웨어 > Network 장비' 카테고리의 다른 글

USB to RS232 컨버터 데이터 수신 몇바이트 놓칠경우  (2) 2012.11.06
LTE vs WIFI(802.11n)  (0) 2012.11.02
2T2R이 머여?  (2) 2012.02.07
IEEE 1394 속도 벤치마크 관련문서들  (0) 2011.12.13
iptime VPN 설정  (0) 2011.12.06
Posted by 구차니
Programming/openCL & CUDA2012. 6. 3. 22:07
SDK 에 들어있는 예제를 통채로 make 해도 되지만 하나만 직접 해보려고 하니 은근 귀찮다 -_-

/usr/local/cuda/bin/nvcc                                                << cuda 컴파일러
~/NVIDIA_GPU_Computing_SDK/C/common/inc  << include path
~/NVIDIA_GPU_Computing_SDK/shared/inc           << include path

nvcc로 컴파일 하면 아래와 같이 두번의 에러가 발생하는데 직접 파일을 검색하니 위의 include path 두개가 걸려 나왔다.
vectorAdd.cu:24:82: fatal error: sdkHelper.h: 그런 파일이나 디렉터리가 없습니다
vectorAdd.cu:25:23: fatal error: shrQATest.h: 그런 파일이나 디렉터리가 없습니다 

nvcc 야 PATH로 환경변수 잡아주면 간단해지지만
저넘의 INCLUDE_PATH가 은근 뒷통수 칠 듯..
$ /usr/local/cuda/bin/nvcc vectorAdd.cu \
   -I
/home/minimonk/NVIDIA_GPU_Computing_SDK/C/common/inc \
   -I
/home/minimonk/NVIDIA_GPU_Computing_SDK/shared/inc

헤더 파일은 아래의 두 곳에
~/NVIDIA_GPU_Computing_SDK/C/common/inc$ ll
합계 572
drwxrwxr-x 4 minimonk minimonk  4096  6월  2 19:00 ./
drwxrwxr-x 6 minimonk minimonk  4096  6월  2 20:25 ../
drwxrwxr-x 2 minimonk minimonk  4096  6월  2 19:00 GL/
-rw-rw-r-- 1 minimonk minimonk 14391  6월  2 19:00 bank_checker.h
-rw-rw-r-- 1 minimonk minimonk 15841  6월  2 19:00 cmd_arg_reader.h
-rw-rw-r-- 1 minimonk minimonk  3999  6월  2 19:00 cudaGLHelper.h
-rw-rw-r-- 1 minimonk minimonk  6442  6월  2 19:00 cudaHelper.h
-rw-rw-r-- 1 minimonk minimonk 20787  6월  2 19:00 cuda_drvapi_dynlink.c
-rw-rw-r-- 1 minimonk minimonk 46935  6월  2 19:00 cutil.h
-rw-rw-r-- 1 minimonk minimonk  3183  6월  2 19:00 cutil_gl_error.h
-rw-rw-r-- 1 minimonk minimonk  3492  6월  2 19:00 cutil_gl_inline.h
-rw-rw-r-- 1 minimonk minimonk  1116  6월  2 19:00 cutil_inline.h
-rw-rw-r-- 1 minimonk minimonk   953  6월  2 19:00 cutil_inline_bankchecker.h
-rw-rw-r-- 1 minimonk minimonk 13007  6월  2 19:00 cutil_inline_drvapi.h
-rw-rw-r-- 1 minimonk minimonk 17779  6월  2 19:00 cutil_inline_runtime.h
-rw-rw-r-- 1 minimonk minimonk 36730  6월  2 19:00 cutil_math.h
-rw-rw-r-- 1 minimonk minimonk 10864  6월  2 19:00 drvapi_error_string.h
drwxrwxr-x 2 minimonk minimonk  4096  6월  2 19:00 dynlink/
-rw-rw-r-- 1 minimonk minimonk 15321  6월  2 19:00 dynlink_d3d10.h
-rw-rw-r-- 1 minimonk minimonk  6202  6월  2 19:00 dynlink_d3d11.h
-rw-rw-r-- 1 minimonk minimonk  1809  6월  2 19:00 error_checker.h
-rw-rw-r-- 1 minimonk minimonk  5035  6월  2 19:00 exception.h
-rw-rw-r-- 1 minimonk minimonk 26819  6월  2 19:00 helper_cuda.h
-rw-rw-r-- 1 minimonk minimonk  5973  6월  2 19:00 helper_cuda_drvapi.h
-rw-rw-r-- 1 minimonk minimonk  4151  6월  2 19:00 helper_cuda_gl.h
-rw-rw-r-- 1 minimonk minimonk  1132  6월  2 19:00 helper_functions.h
-rw-rw-r-- 1 minimonk minimonk 22291  6월  2 19:00 helper_image.h
-rw-rw-r-- 1 minimonk minimonk 10491  6월  2 19:00 helper_string.h
-rw-rw-r-- 1 minimonk minimonk 15757  6월  2 19:00 helper_timer.h
-rw-rw-r-- 1 minimonk minimonk  1323  6월  2 19:00 multithreading.h
-rw-rw-r-- 1 minimonk minimonk  7228  6월  2 19:00 nvGLWidgets.h
-rw-rw-r-- 1 minimonk minimonk  4646  6월  2 19:00 nvGlutWidgets.h
-rw-rw-r-- 1 minimonk minimonk  2967  6월  2 19:00 nvMath.h
-rw-rw-r-- 1 minimonk minimonk 10850  6월  2 19:00 nvMatrix.h
-rw-rw-r-- 1 minimonk minimonk 12347  6월  2 19:00 nvQuaternion.h
-rw-rw-r-- 1 minimonk minimonk  6415  6월  2 19:00 nvShaderUtils.h
-rw-rw-r-- 1 minimonk minimonk 20642  6월  2 19:00 nvVector.h
-rw-rw-r-- 1 minimonk minimonk 15917  6월  2 19:00 nvWidgets.h
-rw-rw-r-- 1 minimonk minimonk  5309  6월  2 19:00 param.h
-rw-rw-r-- 1 minimonk minimonk  2321  6월  2 19:00 paramgl.h
-rw-rw-r-- 1 minimonk minimonk  1024  6월  2 19:00 rendercheck_d3d10.h
-rw-rw-r-- 1 minimonk minimonk  1027  6월  2 19:00 rendercheck_d3d11.h
-rw-rw-r-- 1 minimonk minimonk   998  6월  2 19:00 rendercheck_d3d9.h
-rw-rw-r-- 1 minimonk minimonk  7662  6월  2 19:00 rendercheck_gl.h
-rw-rw-r-- 1 minimonk minimonk 26682  6월  2 19:00 sdkHelper.h
-rw-rw-r-- 1 minimonk minimonk  1116  6월  2 19:00 stopwatch.h
-rw-rw-r-- 1 minimonk minimonk  1897  6월  2 19:00 stopwatch_base.h
-rw-rw-r-- 1 minimonk minimonk  2804  6월  2 19:00 stopwatch_base.inl
-rw-rw-r-- 1 minimonk minimonk 11608  6월  2 19:00 stopwatch_functions.h
-rw-rw-r-- 1 minimonk minimonk  4647  6월  2 19:00 stopwatch_linux.h
-rw-rw-r-- 1 minimonk minimonk  9342  6월  2 19:00 string_helper.h

~/NVIDIA_GPU_Computing_SDK/shared/inc$ ll
합계 192
drwxrwxr-x 4 minimonk minimonk  4096  6월  2 19:00 ./
drwxrwxr-x 6 minimonk minimonk  4096  6월  2 20:25 ../
drwxrwxr-x 2 minimonk minimonk  4096  6월  2 19:00 GL/
-rw-rw-r-- 1 minimonk minimonk 15439  6월  2 19:00 cmd_arg_reader.h
drwxrwxr-x 2 minimonk minimonk  4096  6월  2 19:00 dynlink/
-rw-rw-r-- 1 minimonk minimonk  5035  6월  2 19:00 exception.h
-rw-rw-r-- 1 minimonk minimonk  1323  6월  2 19:00 multithreading.h
-rw-rw-r-- 1 minimonk minimonk  7228  6월  2 19:00 nvGLWidgets.h
-rw-rw-r-- 1 minimonk minimonk  4646  6월  2 19:00 nvGlutWidgets.h
-rw-rw-r-- 1 minimonk minimonk  2966  6월  2 19:00 nvMath.h
-rw-rw-r-- 1 minimonk minimonk 10850  6월  2 19:00 nvMatrix.h
-rw-rw-r-- 1 minimonk minimonk 12347  6월  2 19:00 nvQuaternion.h
-rw-rw-r-- 1 minimonk minimonk  6108  6월  2 19:00 nvShaderUtils.h
-rw-rw-r-- 1 minimonk minimonk 20642  6월  2 19:00 nvVector.h
-rw-rw-r-- 1 minimonk minimonk 15917  6월  2 19:00 nvWidgets.h
-rw-rw-r-- 1 minimonk minimonk  8092  6월  2 19:00 rendercheckGL.h
-rw-rw-r-- 1 minimonk minimonk  6801  6월  2 19:00 shrQATest.h
-rw-rw-r-- 1 minimonk minimonk 33202  6월  2 19:00 shrUtils.h 

so 파일은 아래의 경로에 존재한다.
/usr/local/cuda/lib$ ll
합계 394240
drwxr-xr-x  2 root root      4096  6월  2 18:47 ./
drwxr-xr-x 12 root root      4096  6월  2 18:47 ../
lrwxrwxrwx  1 root root        14  6월  2 18:46 libcublas.so -> libcublas.so.4*
lrwxrwxrwx  1 root root        18  6월  2 18:47 libcublas.so.4 -> libcublas.so.4.2.9*
-rwxr-xr-x  1 root root 105568932  6월  2 18:46 libcublas.so.4.2.9*
lrwxrwxrwx  1 root root        14  6월  2 18:46 libcudart.so -> libcudart.so.4*
lrwxrwxrwx  1 root root        18  6월  2 18:47 libcudart.so.4 -> libcudart.so.4.2.9*
-rwxr-xr-x  1 root root    427344  6월  2 18:46 libcudart.so.4.2.9*
lrwxrwxrwx  1 root root        13  6월  2 18:47 libcufft.so -> libcufft.so.4*
lrwxrwxrwx  1 root root        17  6월  2 18:46 libcufft.so.4 -> libcufft.so.4.2.9*
-rwxr-xr-x  1 root root  29333272  6월  2 18:47 libcufft.so.4.2.9*
lrwxrwxrwx  1 root root        13  6월  2 18:46 libcuinj.so -> libcuinj.so.4*
lrwxrwxrwx  1 root root        17  6월  2 18:46 libcuinj.so.4 -> libcuinj.so.4.2.9*
-rwxr-xr-x  1 root root    157120  6월  2 18:46 libcuinj.so.4.2.9*
lrwxrwxrwx  1 root root        14  6월  2 18:46 libcurand.so -> libcurand.so.4*
lrwxrwxrwx  1 root root        18  6월  2 18:46 libcurand.so.4 -> libcurand.so.4.2.9*
-rwxr-xr-x  1 root root  27434820  6월  2 18:47 libcurand.so.4.2.9*
lrwxrwxrwx  1 root root        16  6월  2 18:46 libcusparse.so -> libcusparse.so.4*
lrwxrwxrwx  1 root root        20  6월  2 18:46 libcusparse.so.4 -> libcusparse.so.4.2.9*
-rwxr-xr-x  1 root root 188374460  6월  2 18:47 libcusparse.so.4.2.9*
lrwxrwxrwx  1 root root        11  6월  2 18:46 libnpp.so -> libnpp.so.4*
lrwxrwxrwx  1 root root        15  6월  2 18:46 libnpp.so.4 -> libnpp.so.4.2.9*
-rwxr-xr-x  1 root root  52381048  6월  2 18:46 libnpp.so.4.2.9* 

'Programming > openCL & CUDA' 카테고리의 다른 글

nvcc 는 int main()을 좋아해  (0) 2012.06.05
cuda 메모리별 접근 소요 클럭 사이클  (0) 2012.06.05
CUDA devicequery - ION 330  (0) 2012.06.02
cuda 5 preview  (0) 2012.06.02
nvidia ion cuda core와 h.264 library  (0) 2012.05.22
Posted by 구차니
phpmyadmin은 database를 편리하게 웹으로 관리하는 도구이다.
별도로 설치하려면 귀찮을 법한데, phpmyadmin 이라는 패키지로 우분투에 존재한다.

 $ sudo apt-get install phpmyadmin

/usr/share/phpmyadmin 에 설치되며
apache 설정에 의해 http://localhost/phpmyadmin 으로 접속이 가능해진다.
로그인 계정은 mysql의 계정과 암호이다.

글쓴당시 최신 버전은 3.5.1 이며
우분투에서 관리되는 버전은 3.4.10.1 이며 한글은 지원되지 않는다.

[링크 :  http://www.phpmyadmin.net/home_page/index.php]
Posted by 구차니
나온지 한 100년 된 모델인데 이제 써보다니 ㅠ.ㅠ

외형은 아래와 같은데 손바닥 쫙편거 보다 약간 큰 정도.
3.5 인치 외장 하드 두개 정도 넓이라고 하면 대충 맞으려나..



시리얼 / 패러럴이 없는게 아쉽지만 추세이니 어쩔수 없고
HDMI / DVI / D-SUB 세가지에 좀 계륵이지만 PS/2 포트를 지원한다.


표준형 어댑터 크기라서 교체하기도 용이할 듯.
단, 12V / 5A 짜리라서 용량이 큰지라 구하기는 좀 쉽지 않을 듯 하다.



안에는 이렇게 깔끔하게 생겼고, CPU는 fanless 모델로
본체에 1개의 팬으로 플라스틱 덕트를 통해 강제 배기 시키는 구조이다.



전원스위치는 저런식으로 달려있고, 전원 들어 오면 흰색(밤에는 좀 밝네 ㅠ.ㅠ)
HDD 작동시에는 빨간불이 들어온다.


전원 켜면 이렇게 아이언맨 아크원자로 처럼 흰색 불이 뽀대나게!


HDD 읽을때는 빨간색이 들어오는데 이러니까 악당꺼 같다?


사양은 DDR2 2GB


Atom 330 dual core / HT(끄는 옵션은 못 찾음)


320GB 2.5인치 하드


대기전력은 1W 정도


BIOS에서 24W 최대 30W 정도까지 올라간다.


현재 우분투 12.04 LTS 에 ssh 만 깔아놓고 cuda 설정해놓고 가지고 놀기 대기중 ㅋㅋㅋ

'개소리 왈왈 > 컴퓨터' 카테고리의 다른 글

업어온 컴퓨터  (0) 2012.08.19
umid mbook m1 충전시간  (0) 2012.07.03
아직은 너무나 먼 리눅스  (0) 2012.06.03
아 몰라 지르고 봐!  (2) 2012.05.31
욕심 / 목표 / 폭파  (0) 2012.05.28
Posted by 구차니