Posts

Pytorch GPU @ Ubuntu 18.04 下篇-打造雲端工作站

Image
這篇主要目的是要將Ubuntu變成一個雲端工作站 讓筆電這種運算能力比較弱的裝置可以遠端連線進來, 讓你可以在任何有網路的地方寫Deep learning的程式。 至於為什麼要用Ubuntu18.04? 因為他終於完整支援XRDP啦,你問我XRDP是啥? XRDP可以讓你在Windows/Mac/Linux系統的電腦,遠端連線到Ubuntu主機上,如下圖 相較於Teamviewer,XRDP有以下優點,使其更適合用於工作站: 支援多人同時連線 沒有螢幕解析度問題 更流暢 Win10 Win7內建連線程式,不須額外安裝 連線帳號就是Ubuntu的使用者帳號, 你可以任意新增帳號將機器分享給其他人使用 (只有一個缺點:需要固定IP或Domain Name) 不過這邊我們先把該裝的東西裝一裝 一些常用工具安裝 git版本控制 sudo apt-get install git vim文字編輯器 sudo apt-get install vim SSH安裝 ssh-server可以透過文字介面連到Server,這個基本上是必裝 sudo apt-get install openssh-server XRDP安裝與使用 安裝指令如下: sudo apt-get install xrdp 裝好後應該會自動啟動,若無可試試 sudo service xrdp start 或是 sudo service xrdp restart 從Windows連線到Ubuntu 搜尋遠端桌面 輸入伺服器ip,按連線 輸入帳號密碼 這邊目前設計不良,要再輸入一次密碼 這個目前也是設計不良,不要理他,直接按取消 又會跳出一個視窗,再按取消 理論上 你就會登入到這個畫面,介面和本地端的略有不同 這個應該是原生的Gnome的UI 除了使用XRDP,架Jupyter從遠端連也是另外一種方法 有空我會在寫一篇關於遠端Jupyter的方法

Pytorch GPU @ Ubuntu 18.04 安裝教學

Image
Pytorch GPU @ Ubuntu 18.04 安裝教學 本文理論上也適用於Ubuntu 16.04 17.04 17.10 安裝driver 按Ctrl+T開啟指令視窗,輸入   sudo ubuntu-drivers autoinstall 預設是裝nvidia-390 driver 安裝cuda 至 下載頁面 下載cuda9.1/9.0:  下載後,在Terminal切換到下載資料夾 cd ~/Downloads chmod 755 cuda_9.1.85_387.26_linux.run sudo ./cuda_9.1.85_387.26_linux.run --override 像這樣 接下來你可參考我的方式安裝 安裝cudnn 先前往 cudnn下載頁面 這邊的話,你必須註冊Nvidia developer帳號並登入才能下載 註冊完email認證後,回到下載頁面你會看到如下選單 這邊我們選用cudnn 7 for CUDA 9.1 點進去選對應你作業系統的檔案來抓,這邊選cudnn for Linux cudnn是一個壓縮檔,沒有安裝程式,下載後,請依照如下步驟安裝: 將下載的cudnn的zip檔解壓縮 找到cuda安裝路徑,長得像是   /usr/local/cuda   or    /usr/local/cuda-9.1 把解壓縮的檔案丟進去   cd /usr/local/cuda   sudo cp -r ~/Downloads/cuda/* ./ 環境變數設置 在.bashrc中新增cuda環境變數 使用指令開啟文字編輯器 gedit ~/.bacshrc or nano ~/.bashrc 在文件末端新增 export PATH="$PATH:/usr/local/cuda/bin" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64" 存檔後退...

ETH geth使用&發行ERC20代幣 草稿

###本文目前是草稿 本文寫作的機緣是參加區塊鏈Hackthon的一個會前賽(應該算會前賽吧XD) 紀錄我建立ERC20代幣的流程 這兩天讀了大量資料,但資料都滿散的 萬一之後忘記,要再重找資料可就很浪費時間了 開發環境: 以太節點:Ubuntu(我的桌電,放在學校) 客戶端:MacOS(筆電)& Windows (家裡的桌電) 以下正文開始 PART 1 : 建立節點 安裝geth sudo add-apt-repository -y ppa:ethereum/ethereum sudo apt-get update sudo apt-get install ethereum   在terminal輸入geth看有沒有安裝成功(之後補圖) 有則打exit退出   在Rinkeby測試網上啟動一個節點 geth --rinkeby console --rpc --rpcaddr 0.0.0.0 --ws --wsaddr 0.0.0.0 --rpcaddr 0.0.0.0 是可以用該台電腦ip從外部直接連入,預設port是8545 限定本地端你也可以用 --rpcaddr 127.0.0.1  掛著他會自己同步區塊資料,就給他掛著吧   用curl測試Json-RPC API有沒有正確運作 可以在這裡找到API說明 https://github.com/ethereum/wiki/wiki/JSON-RPC#eth_gettransactionbyhash 我先設一個alias,和一個環境變數lc 方便測試 alias gg= "curl -X POST -H \"Content-Type: application/json\" --data" export lc= 140.114.78.42:8545 Terminal input: gg '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' $lc return: {"jsonr...

PyTorch x Windows x GPU 安裝說明

Image
若你是要安裝CPU版,請跳過前面,至Python環境架設章節  安裝driver  到 nvidia官方網站 下載gpu driver並安裝 選擇GPU型號、作業系統 下載後執行並開始安裝 安裝介面示意圖,基本上一路按下去就裝完了 (圖片來自網路) 安裝cuda 至下載頁面下載cuda: 下載cuda 9.0  (對應cudnn 7) 選擇好你的作業系統後開始下載 一樣一路按下去就裝完了 (圖片來自網路) 安裝cudnn 先前往 cudnn 下載頁面 這邊的話,你必須註冊Nvidia developer帳號並登入才能下載 登入Nvidia developer,或是按Join註冊一個新帳號 註:與其說是註冊帳號,不如說是做Nvidia的問卷調查XD  就照實填就好,看不懂亂填也沒關係 註冊完email認證後,回到下載頁面你會看到如下選單: 選cuda-9.0和cudnn-7.0.5的組合 點進去選對應你作業系統的檔案來抓 cudnn沒有安裝程式,下載後,請依照如下步驟安裝: 將下載的cudnn的zip檔解壓縮 找到cuda安裝路徑,長得像是: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0 把解壓縮得到的檔案丟進去 Python環境架設 如果你不喜歡容量很肥的Anaconda,也可以使用精簡版的Miniconda 下載Anaconda   (包含許多Data Science常用的套件,在個人電腦使用建議用這個) 下載Miniconda   (乾淨的精簡版,但你會需要手動安裝許多相關套件) 若你電腦從未安裝過Python,建議照以下方式安裝 註:如果你是照著本篇的步驟一步一步做,建議抓Anaconda,以免套件東缺西少。 (示範圖片是Miniconda,但步驟相同) 選Just Me 兩個都勾 剩下一路點到完 裝完後測試方式: 對左下角Windows圖示點右鍵叫出選單,開啟PowerShell(用cmd也可以) 分別輸入Get-Command python 、 Get-Command conda ...

區塊鏈年度十大事實

十大事實來自於FB GPU Mining 顯示卡挖礦社團的文章, 一個不願具名的區塊鏈工程師的視角 我用比較白話的方式重寫了這十大事實,小部分直接引用(10.) 1. 大多數加密貨幣其實都不怎麼加密! 譬如比特幣和以太幣的系統中,交易資料都是公開的,並沒有被加密。 譬如我的其中一個錢包: https://etherscan.io/address/0x046542b6f832c0c25825ebdaf5e018f027ed9291 這種系統中,唯一有用到加密演算法的是數位簽章系統, 使用非對稱加密系統來做簽章,用來確認錢是由錢包主人發出。 你可以在上面那個連結看到我錢包裏有多少錢,但如果你要動我錢包裡的錢, 得要先從我這邊拿到私鑰,才有辦法做出合法的數位簽章去做交易請求。 不過當然也有更隱密的交易貨幣,譬如XMR 2.大多數ICO token的用途都是中心化的,即便這些token存在去中心化的區塊鏈上 大部分token都是由發行公司透過ETH智能合約創造的,建立在現成的ETH網路上, 利用現成的礦工體系做運算。 這類的token,發行公司握有主導權。其在資料儲存上是去中心化的,但操作手段可以很中心化。如果你真懂智能合約,你就知道裡面可以玩的東西很多,包含操控發行量,交易手續費等等。 尤其現在資訊還不是很流通,不懂怎麼看合約的人,就會傻傻被吃死死。(ex. IxCoin) 3.大多數token的功能ETH都能做 如上一點所述,由於 大部分 token是透過ETH智能合約創造,所以 大多數token能做到的功能ETH都能做。創token的目的主要是對公司有利,譬如控制貨幣發行、圈錢炒幣等等... 但是呢,扣掉那些負面的效應不說,我認為Token機制有三個很重要的特性值得一提: 1.創造品牌效應 ETH三個字本身只代表一種虛擬貨幣 但如果買A片你可能會想到AVH 買XX你會想到XX幣 買OO你會想到OO幣 依此類推 (不好意思,我孤陋寡聞,只舉的出AVH) 2.低成本高可靠性 以往只有政府或銀行才能發行貨幣或債券 現在只要透過ETH系統,就可以用超低成本來發行自己的代幣 現成程式!現成礦工!現成P2P網路!高可靠性!超低成本! 成本有多低? 你只要給我一天時間,我去抄別人的Code就...

Tensorflow GPU x Windows 10 個人開發環境+多人遠端工作站 架設指南

Image
Tensorflow GPU Windows 10 個人開發環境及多人遠端工作站 架設指南 雖然Deep Learning開發的主流作業系統是Ubuntu 但對於非資工本科的開發人員,Win10無疑是更好的選擇 本文將介紹Win10作業系統下Tensorflow-gpu的環境建置 適用於個人電腦安裝 以及如何設置成可供多人使用的小型工作站(適用於學校LAB) 內容包含五個區塊: GPU環境架設 Python環境架設-Anaconda/Miniconda安裝 Tensorflow及相關套件安裝 PyCharm安裝 Windows 10多人遠端桌面設定 GPU環境架設 首先你要先有一張nvidia的顯示卡,建議至少1060 6G以上,最低1050 4G 安裝driver  到 nvidia官方網站 下載gpu driver並安裝 選擇GPU型號、作業系統 下載後執行並開始安裝 安裝介面示意圖,基本上一路按下去就裝完了 (圖片來自網路) 安裝cuda 至下載頁面下載cuda: 下載cuda 8.0  (對應cudnn 6 / tensorflow 1.3&1.4) 下載cuda 9.0  (對應cudnn 7 / tensorflow 1.5) 下載cuda 9.1  (對應cudnn 7 / tensorflow 1.?) 註:若跑tensorflow 1.3/1.4的code建議裝cuda 8.0 如果要使用最新的tensorflow 1.5,則下載cuda 9.0 ※官方release的tensorflow 1.5目前是吃9.0,不是9.1 選擇好你的作業系統後開始下載 一樣一路按下去就裝完了 (圖片來自網路) 安裝cudnn 先前往 cudnn 下載頁面 這邊的話,你必須註冊Nvidia developer帳號並登入才能下載 登入Nvidia developer,或是按Join註冊一個新帳號 註:與其說是註冊帳號,不如說是做Nvidia的問卷調查XD  就照實填就好,看不懂亂填也沒關係 註冊完email認證後,回到下載頁面你會看到如下選單: 你是裝cuda-8.0的話,選cuda-8...