2011年9月19日 星期一

在 Linux 下執行 CUDA 時出現 /dev/nvidiactl 無法開啟之問題排除

平時執行 CUDA 程式時,都是以使用者的帳號進行編譯執行,然而遭遇某次異常停電後,安裝 GPGPU 的 Linux 主機在執行 CUDA 程式時,出現下列警告訊息:
  • could not open the device file /dev/nvidiactl (No such file or directory)
但是以 root 的身份去查詢,卻又發現 nvidiactl 確實存在,因此推測系統可能在異常關閉後, nvidiactl 的權限遭到更改,又或者是沒設定開機後CUDA自動啟動,於是以下將介紹該障礙排除的方法:

2011年9月2日 星期五

在 Linux 下直接使用 NVCC 編譯 CUDA SDK 程式

CUDA SDK 不僅提供使用者一些範例程式,使用者也可透過修改 template 範例來設計自己的程式。以往使用者在 Linux 下,都是透過該範例提供的 Makefile 進行編譯,並載入 CUDA SDK 提供的 common.mk 來設定相關編譯參數。然而使用者有時會依需求來決定編譯參數,但在不了解 common.mk 的參數設定之情況下,很難修改其內容。

關於修改 Makefile 來設定 Compute Capability 版本,可參考此篇:

於是,本篇將提供在 CUDA SDK 下直接使用 NVCC 編譯:

在 Linux 下修改 CUDA SDK Makefile 達成 Compute Capability 設定

 一般 CUDA 設計教學,都會要求初學者直接修改 CUDA SDK 的 template 範例。目前我使用的 Device 為 NVIDIA Tesla C1060 ,可支援 Compute Capability 1.3 以下的運算,但若直接使用 make 的指令, Compiler 會預設使用 Compute Capability 1.0 來運行。

然而網路上常看到的設定方式,都是在 Window 下,透過 Microsoft Visual 圖形化介面設定; Linux 上,則都是直接設定 NVCC 編譯器的參數,鮮少有 SDK 範例的修改。因此使用者若想使用 SDK 的範例,並指定 Compute Capability 的版本,可將欲編譯的程式之 Makefile 的主函數描述進行修改:

2011年5月11日 星期三

Tomcat JSP伺服器架設

在架設 Tomcat 以前,使用者必須先瞭解到 Tomcat 與JDK 版本之間的對應關係,要是選擇錯誤的版本搭配,將會造成 Tomcat 無法順利運作。以下為版本間的搭配:
  • Tomcat 7.0.X 搭配 JDK 1.6.0_Y
  • Tomcat 6.0.X 搭配 JDK 1.5.0_Y
  • Tomcat 5.5.X 搭配 JDK 1.4.0_Y ( 特殊功能需改用 JDK 1.5.0_Y )
本篇將以安裝 Tomcat 6.0 為例,請使用者先安裝 JDK 1.5.0_Y並設定環境變數,以下文章為 JDK 安裝方式:

Linux 系統下安裝 JDK

下列網址為 Java 歷屆版本下載:
以 jdk-1_5_0_22-linux-i586.bin 的 bin 檔為例。下載完成後,用 root 登入終端機並移動至下載 JDK 資料夾的位置,開始進行安裝的動作。本例安裝至 /usr/share 的資料夾底下,使用者可自行改變安裝位置,但後半段的環境變數也必須與自行安裝的路徑相同。

Debian ZeroJudge 系統架設完整詳細流程

本篇將教導大家自己架設高中生程式解題系統 ZeroJudge:

架設之前請先架設好 MySQL 伺服器,建議可以再安裝 Apache2.2 、 PhpMyadmin 以方便管理。此外,由於 ZeroJudge 是使用 Port 80 ,所以必須要修改 Apache2.2 預設的Port,各位可參考下列文章;

2011年5月9日 星期一

修改 Apache 2.2 的 Port Number

以下範例是在 Debain 6.0.1 32位元的作業系統下操作,並請事先安裝 apache2.2:

2011年3月31日 星期四

Linux系統下安裝phpMyAdmin

以下範例是在 Fedora 14 32位元的作業系統下操作,並請事先安裝 apache、MySQL: