add auto fetch ssl certs
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
"articleSection" : "post",
|
||||
"name" : "[筆記] 在ubuntu 18.04 下安裝nvidia 顯示卡驅動程式以及 pgstrom \/ Install Nvidia Driver Cuda Pgstrom in Ubuntu 1804",
|
||||
"headline" : "[筆記] 在ubuntu 18.04 下安裝nvidia 顯示卡驅動程式以及 pgstrom \/ Install Nvidia Driver Cuda Pgstrom in Ubuntu 1804",
|
||||
"description" : "\x3cp\x3e因為老闆說要試試看用GPU 來跑postgresql 威力\x3c\/p\x3e\n\n\x3cp\x3e手邊剛好有一張 geforce gt 720\x3c\/p\x3e\n\n\x3cp\x3e一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援\x3c\/p\x3e\n\n\x3cp\x3e就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了\x26hellip;\x3c\/p\x3e",
|
||||
"description" : "\x3cp\x3e因為老闆說要試試看用GPU 來跑postgresql 威力\x3c\/p\x3e\n\x3cp\x3e手邊剛好有一張 geforce gt 720\x3c\/p\x3e\n\x3cp\x3e一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援\x3c\/p\x3e\n\x3cp\x3e就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了\x26hellip;\x3c\/p\x3e",
|
||||
"inLanguage" : "en",
|
||||
"author" : "Eric Chang",
|
||||
"creator" : "Eric Chang",
|
||||
@@ -45,9 +45,9 @@
|
||||
|
||||
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
|
||||
|
||||
<link href="https://h.cowbay.org/css/style.css?v=1626744134" rel="stylesheet" id="theme-stylesheet" type='text/css' media='all'>
|
||||
<link href="https://h.cowbay.org/css/style.css?v=1629951055" rel="stylesheet" id="theme-stylesheet" type='text/css' media='all'>
|
||||
|
||||
<link href="https://h.cowbay.org/css/custom.css?v=1626744134" rel="stylesheet" type='text/css' media='all'>
|
||||
<link href="https://h.cowbay.org/css/custom.css?v=1629951055" rel="stylesheet" type='text/css' media='all'>
|
||||
<link rel="shortcut icon" href="https://h.cowbay.org/img/favicon.ico" type="image/x-icon">
|
||||
<link rel="icon" href="https://h.cowbay.org/img/favicon.ico" type="image/x-icon">
|
||||
|
||||
@@ -81,10 +81,6 @@ if (!doNotTrack) {
|
||||
|
||||
<ul id="menu-secondary-items" class="menu-secondary-items">
|
||||
|
||||
<li class="menu-item menu-item-type-taxonomy menu-item-object-category">
|
||||
<a href="/categories/"></a>
|
||||
</li>
|
||||
|
||||
<li class="menu-item menu-item-type-taxonomy menu-item-object-category">
|
||||
<a href="/categories/ansible">ansible</a>
|
||||
</li>
|
||||
@@ -309,42 +305,24 @@ if (!doNotTrack) {
|
||||
<div class="entry-content">
|
||||
<article>
|
||||
<p>因為老闆說要試試看用GPU 來跑postgresql 威力</p>
|
||||
|
||||
<p>手邊剛好有一張 geforce gt 720</p>
|
||||
|
||||
<p>一開始沒想太多,看到有這張卡的驅動程式,然後CUDA也有支援</p>
|
||||
|
||||
<p>就直接從桌機拔下來,接去LAB Server ,然後就開始一連串的難關了…</p>
|
||||
|
||||
<p>整個過程大致上分為四個步驟</p>
|
||||
|
||||
<h3 id="安裝-nvidia-driver">安裝 nvidia driver</h3>
|
||||
|
||||
<h3 id="安裝-cuda">安裝 CUDA</h3>
|
||||
|
||||
<h3 id="安裝-postgresql">安裝 postgresql</h3>
|
||||
|
||||
<h3 id="安裝-pgstrom">安裝 pgstrom</h3>
|
||||
|
||||
<hr />
|
||||
|
||||
<hr>
|
||||
<h4 id="安裝-nvidia-driver-1">安裝 nvidia driver</h4>
|
||||
|
||||
<p>試過幾種方法,最後還是覺得用apt來安裝比較妥當
|
||||
先新增repository、update、裝driver</p>
|
||||
|
||||
<pre><code>sudo add-apt-repository ppa:graphics-drivers/ppa
|
||||
sudo apt update
|
||||
sudo apt install ubuntu-drivers-common
|
||||
</code></pre>
|
||||
|
||||
<p>然後用這個指令</p>
|
||||
|
||||
</code></pre><p>然後用這個指令</p>
|
||||
<pre><code>ubuntu-drivers devices
|
||||
</code></pre>
|
||||
|
||||
<p>看一下現在的驅動程式狀態</p>
|
||||
|
||||
</code></pre><p>看一下現在的驅動程式狀態</p>
|
||||
<pre><code>administrator@hqdc032:~/pg-strom$ ubuntu-drivers devices
|
||||
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
|
||||
modalias : pci:v000010DEd00001288sv0000174Bsd0000326Bbc03sc00i00
|
||||
@@ -357,22 +335,13 @@ driver : nvidia-driver-430 - third-party free recommended
|
||||
driver : nvidia-driver-390 - third-party free
|
||||
driver : nvidia-driver-415 - third-party free
|
||||
driver : xserver-xorg-video-nouveau - distro free builtin
|
||||
</code></pre>
|
||||
|
||||
<p>我這張卡,可以裝到 430 的版本,
|
||||
</code></pre><p>我這張卡,可以裝到 430 的版本,
|
||||
接下來就繼續安裝驅動程式、裝完之後重開機</p>
|
||||
|
||||
<pre><code>sudo apt install nvidia-driver-430
|
||||
sudo reboot
|
||||
</code></pre>
|
||||
|
||||
<p>這時候,應該可以看到一些基本資訊</p>
|
||||
|
||||
</code></pre><p>這時候,應該可以看到一些基本資訊</p>
|
||||
<pre><code>lsmod|grep nvidia
|
||||
</code></pre>
|
||||
|
||||
<p>大概長這樣</p>
|
||||
|
||||
</code></pre><p>大概長這樣</p>
|
||||
<pre><code>nvidia_uvm 798720 0
|
||||
nvidia_drm 45056 3
|
||||
nvidia_modeset 1093632 7 nvidia_drm
|
||||
@@ -380,22 +349,13 @@ nvidia 18194432 258 nvidia_uvm,nvidia_modeset
|
||||
drm_kms_helper 172032 1 nvidia_drm
|
||||
drm 401408 6 drm_kms_helper,nvidia_drm
|
||||
ipmi_msghandler 53248 2 ipmi_devintf,nvidia
|
||||
</code></pre>
|
||||
|
||||
<p>到這邊 nvidia 驅動程式安裝完成,接下來安裝 cuda</p>
|
||||
|
||||
</code></pre><p>到這邊 nvidia 驅動程式安裝完成,接下來安裝 cuda</p>
|
||||
<h4 id="安裝-cuda-1">安裝 CUDA</h4>
|
||||
|
||||
<p>同樣採用官網下載deb 回來安裝的方法</p>
|
||||
|
||||
<p>到這邊 <a href="https://developer.nvidia.com/cuda-downloads">https://developer.nvidia.com/cuda-downloads</a></p>
|
||||
|
||||
<p>依照自己的系統選擇</p>
|
||||
|
||||
<p>我選擇 Linux – x86_64 – Ubuntu – 18.04 – deb(local)</p>
|
||||
|
||||
<p>畫面上就會有安裝步驟,照著做就沒問題了</p>
|
||||
|
||||
<pre><code>wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
|
||||
sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
|
||||
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda-repo-ubuntu1804-10-1-local-10.1.243-418.87.00_1.0-1_amd64.deb
|
||||
@@ -403,16 +363,10 @@ sudo dpkg -i cuda-repo-ubuntu1804-10-1-local-10.1.243-418.87.00_1.0-1_amd64.deb
|
||||
sudo apt-key add /var/cuda-repo-10-1-local-10.1.243-418.87.00/7fa2af80.pub
|
||||
sudo apt-get update
|
||||
sudo apt-get -y install cuda
|
||||
</code></pre>
|
||||
|
||||
<p>一樣,安裝完成後重新開機,然後來編譯一個 deviceQuery 的小程式來看看資訊</p>
|
||||
|
||||
</code></pre><p>一樣,安裝完成後重新開機,然後來編譯一個 deviceQuery 的小程式來看看資訊</p>
|
||||
<pre><code>cd /usr/local/cuda-10.1/samples/1_Utilities/deviceQuery
|
||||
sudo make
|
||||
</code></pre>
|
||||
|
||||
<p>會產生一個叫 deviceQuery 的執行檔,執行後,會有相關資訊</p>
|
||||
|
||||
</code></pre><p>會產生一個叫 deviceQuery 的執行檔,執行後,會有相關資訊</p>
|
||||
<pre><code>administrator@hqdc032:/usr/local/cuda-10.1/samples/1_Utilities/deviceQuery$ ./deviceQuery
|
||||
./deviceQuery Starting...
|
||||
|
||||
@@ -458,91 +412,50 @@ Device 0: "GeForce GT 720"
|
||||
|
||||
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 10.1, CUDA Runtime Version = 10.1, NumDevs = 1
|
||||
Result = PASS
|
||||
</code></pre>
|
||||
|
||||
<p>到這邊, CUDA 也安裝完成,再來是簡單的 postgresql 11</p>
|
||||
|
||||
</code></pre><p>到這邊, CUDA 也安裝完成,再來是簡單的 postgresql 11</p>
|
||||
<h4 id="安裝-postgresql-11">安裝 postgresql 11</h4>
|
||||
|
||||
<p>步驟差不多,就是新增repository,然後選擇要安裝的套件,不過套件的選擇和平常安裝postgresql 不太一樣</p>
|
||||
|
||||
<pre><code>sudo apt install wget ca-certificates
|
||||
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
||||
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
|
||||
sudo apt update
|
||||
sudo apt install postgresql-client-11 postgresql-11 postgresql-server-dev-11 postgresql-common libicu-dev
|
||||
</code></pre>
|
||||
|
||||
<p>跑完之後,就直接啟動 postgresql service 就可以了</p>
|
||||
|
||||
</code></pre><p>跑完之後,就直接啟動 postgresql service 就可以了</p>
|
||||
<p>再來是最麻煩的 pgstorm</p>
|
||||
|
||||
<h4 id="pgstorm">pgstorm</h4>
|
||||
|
||||
<p>話說,這軟體到底叫啥名字? pgstrom , pg-strom ? 看起來就像是拼錯字啊! =.=</p>
|
||||
|
||||
<p><a href="https://github.com/heterodb/pg-strom">https://github.com/heterodb/pg-strom</a></p>
|
||||
|
||||
<p>先 git clone 回來,然後make、make install</p>
|
||||
|
||||
<p>講是很簡單,但是一開始碰到很多問題,有去github 跟開發團隊回報,幸好有回覆我..</p>
|
||||
|
||||
<p>總之,目前在ubuntu 18.04 + postgresql-11 的環境下編譯是沒有問題了</p>
|
||||
|
||||
<h2 id="update">UPDATE</h2>
|
||||
|
||||
<p>今天拿到一張 GTX 1050 ti ,想說終於可以來測試看看 pg_strom 了</p>
|
||||
|
||||
<p>不過發現在ubuntu 底下,照著這篇操作還是會有問題</p>
|
||||
|
||||
<p>在做完git clone 要 make 之前,要先執行底下兩行指令</p>
|
||||
|
||||
<p>其中的 11 是 postgresql 版本,要依照自己安裝的版本做調整</p>
|
||||
|
||||
<pre><code>sudo ln -snf /usr/lib/postgresql/11/lib/libpgcommon.a /usr/lib/x86_64-linux-gnu/libpgcommon.a
|
||||
sudo ln -snf /usr/lib/postgresql/11/lib/libpgport.a /usr/lib/x86_64-linux-gnu/libpgport.a
|
||||
|
||||
</code></pre>
|
||||
|
||||
<p>接著再去 make 就沒問題了</p>
|
||||
|
||||
</code></pre><p>接著再去 make 就沒問題了</p>
|
||||
<pre><code>git clone https://github.com/heterodb/pg-strom.git
|
||||
cd pg-strom
|
||||
make && sudo make install
|
||||
</code></pre>
|
||||
|
||||
<p>再來設定一下 postgresql</p>
|
||||
|
||||
</code></pre><p>再來設定一下 postgresql</p>
|
||||
<h4 id="postgresql-相關設定">postgresql 相關設定</h4>
|
||||
|
||||
<p>需要修改一下postgresql.conf,來指定載入 pgstrom 的 library</p>
|
||||
|
||||
<p>官方是這麼說的</p>
|
||||
|
||||
<pre><code>PG-Strom module must be loaded on startup of the postmaster process by the shared_preload_libraries. Unable to load it on demand. Therefore, you must add the configuration below.
|
||||
</code></pre>
|
||||
|
||||
<p>修改 /etc/postgresql/11/main/postgresql.conf
|
||||
</code></pre><p>修改 /etc/postgresql/11/main/postgresql.conf
|
||||
加入一行</p>
|
||||
|
||||
<pre><code>shared_preload_libraries = '$libdir/pg_strom'
|
||||
</code></pre>
|
||||
|
||||
<p>然後還有其他三個要修改,不過這個不改不會影響pgstrom 的啟動</p>
|
||||
|
||||
</code></pre><p>然後還有其他三個要修改,不過這個不改不會影響pgstrom 的啟動</p>
|
||||
<p>看狀況要不要修改吧</p>
|
||||
|
||||
<pre><code>max_worker_processes = 100
|
||||
shared_buffers = 10GB
|
||||
work_mem = 1GB
|
||||
</code></pre>
|
||||
|
||||
<p>修改完後,重新啟動 postgresql service 有沒有很感動!?我終於可以享受用GPU跑SQL Query 的快感啦!!!</p>
|
||||
|
||||
</code></pre><p>修改完後,重新啟動 postgresql service 有沒有很感動!?我終於可以享受用GPU跑SQL Query 的快感啦!!!</p>
|
||||
<p>咦??等等,為什麼postgresql service 沒起來!?</p>
|
||||
|
||||
<p>看一下 /var/log/syslog</p>
|
||||
|
||||
<pre><code>Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: Error: /usr/lib/postgresql/11/bin/pg_ctl /usr/lib/postgresql/11/bin/pg_ctl start -D /var/lib/postgresql/11/main -l /var/log/postgresql/postgresql-11-main.log -s -o -c config_file="/etc/postgresql/11/main/postgresql.conf" exited with status 1:
|
||||
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.538 CST [11806] LOG: PG-Strom version 2.2 built for PostgreSQL 11
|
||||
Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: 2019-08-20 14:23:43.565 CST [11806] LOG: PG-Strom: GPU0 GeForce GT 720 - CC 3.5 is not supported
|
||||
@@ -553,18 +466,11 @@ Aug 20 14:23:43 hqdc032 postgresql@11-main[11801]: Examine the log output.
|
||||
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Can't open PID file /run/postgresql/11-main.pid (yet?) after start: No such file or directory
|
||||
Aug 20 14:23:43 hqdc032 systemd[1]: postgresql@11-main.service: Failed with result 'protocol'.
|
||||
Aug 20 14:23:43 hqdc032 systemd[1]: Failed to start PostgreSQL Cluster 11-main.
|
||||
</code></pre>
|
||||
|
||||
<p>啊幹!pg-strom 不支援這張GT 720啦!</p>
|
||||
|
||||
</code></pre><p>啊幹!pg-strom 不支援這張GT 720啦!</p>
|
||||
<p><a href="https://github.com/heterodb/pg-strom/wiki/001:-GPU-Availability-Matrix">https://github.com/heterodb/pg-strom/wiki/001:-GPU-Availability-Matrix</a></p>
|
||||
|
||||
<p>簡單說,就是至少從 GTX 1080 起跳,其他都不用想了</p>
|
||||
|
||||
<p>幹,花了兩天的時間在弄這東西,結果明明一開始就應該要先檢查的相容列表卻沒有檢查…</p>
|
||||
|
||||
<p>好了,現在就看准不准我買一張 GTX 1080 來測試了….</p>
|
||||
|
||||
<p>只是這價格嘛…嗯咳,不是我該煩惱的問題了..</p>
|
||||
</article>
|
||||
</div>
|
||||
@@ -840,7 +746,7 @@ title="pinterest icon"></i>
|
||||
|
||||
</ul> <div class="design-credit">
|
||||
|
||||
<p>© 2018 Göran Svensson</p>
|
||||
<p>© 2018 Göran Svensson</p>
|
||||
|
||||
<p>Nederburg Hugo Theme by <a href="https://appernetic.io">Appernetic</a>.</p>
|
||||
|
||||
@@ -852,7 +758,7 @@ title="pinterest icon"></i>
|
||||
</div>
|
||||
<script src="https://h.cowbay.org/js/jquery.min.js"></script>
|
||||
<script src="https://h.cowbay.org/js/jquerymigrate.js"></script>
|
||||
<script src="https://h.cowbay.org/js/production.min.js?v=1626744134"></script>
|
||||
<script src="https://h.cowbay.org/js/production.min.js?v=1629951055"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user