例外:设备内核映像无效

问题描述 投票:0回答:2

我是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的查询引擎会混淆初始化两种不同类型的卡的参数。

有没有人有任何想法或建议?

gpgpu omni-sci
2个回答
2
投票

我刚才发现了自己。 omn​​isci服务器的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


0
投票

使用多个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的方式。

© www.soinside.com 2019 - 2024. All rights reserved.