我是omnisci开源社区的新手。我按照指令(https://www.omnisci.com/docs/latest/4_ubuntu-apt-gpu-os-recipe.html)将omnisci(开源版本)安装到我的ubuntu 18.04LTS中
~$ sudo systemctl start omnisci_server
~$ $OMNISCI_PATH/bin/omnisql
Password:
User mapd connected to database maps
omnisql>
我还安装了CUDA驱动程序10.0
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 415.27 Driver Version: 415.27 CUDA Version: 10.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
|
0 TITAN V Off | 00000000:17:00.0 Off | N/A |
| 33% 48C P8 30W / 250W | 421MiB / 12036MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
|
1 GeForce GTX 108... Off | 00000000:65:00.0 Off | N/A |
| 30% 53C P8 20W / 250W | 172MiB / 11178MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
|
2 GeForce GTX 108... Off | 00000000:66:00.0 On | N/A |
| 63% 81C P0 70W / 250W | 829MiB / 11175MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
但是,当我对样本数据集运行简单查询时,它会报告错误:
omnisql> \t
omnisci_states
omnisci_counties
omnisci_countries
nyc_trees_2015_683k
omnisql> select * from omnisci_counties;
Exception: device kernel image is invalid
我和我的朋友就这个问题进行了讨论。我们相信这是因为我的机器上有两种不同类型的GPU。我需要在启动omnisql服务器时指定一种类型的GPU,因为omnisci的查询引擎会混淆初始化两种不同类型的卡的参数。
有没有人有任何想法或建议?
我刚才发现了自己。 omnisci服务器的GPU设备必须一致。您可以使用多张卡,但它们必须是同一类型。例如,在我的例子中,在omnisci.conf中设置参数
port = 6274
http-port = 6278
calcite-port = 6279
data = "/var/lib/omnisci/data"
null-div-by-zero = true
num-gpus = 2
start-gpu = 1
使用$sudo systemctl start omnisci_server
启动服务器时,将自动加载文件omnisci.conf
。
使用多个GPU时,它们需要是相同的型号。根据OmniSci常见问题解答:
https://www.omnisci.com/docs/latest/7_faq.html#multi-gpus
OmniSci是否支持具有不同GPU的单个服务器?例如,我可以在一台配有两个NVIDIA GTX 760 GPU和两个NVIDIA GTX TITAN GPU的服务器上安装OmniSci吗?
OmniSci不支持混合不同的GPU模型。最初,您可能不会注意到该配置存在许多问题,因为GPU是同一代。但是,在这种情况下,您应该考虑删除GTX 760 GPU,或配置OmniSci不使用它们。
要配置OmniSci以使用特定的GPU:
运行nvidia-smi命令以查看GTX 760的GPU ID。最有可能的是,GPU按类型分组。编辑omnisci_server配置文件,如下所示:如果GTX 760 GPU为0,1,请使用选项start-gpu = 2配置omnisci_server以使用剩余的两个TITAN GPU。如果GTX 760s是2,3,请在配置文件中添加选项num-gpus = 2。配置文件的位置取决于您安装OmniSci的方式。