tree e000b208a0f55570909b49f19200fad3c02de264
parent 0f50490e9d7cdf117fefb81bd8efbfee85d95573
author kaknikhil <kaknikhil@users.noreply.github.com> 1573670744 -0800
committer GitHub <noreply@github.com> 1573670744 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJdzE9YCRBK7hj4Ov3rIwAAdHIIAKliqxsenvLqrQObbhkTkZKf
 ajr0G4LmufwrJ0GpR2w4yY1ekKTdxtZIdLDhk8hXBlE7NFqrL8pCcRzc5Vniye5Q
 1qTylooeE8Ubo6pOU5Hu4Rg1P7t8YyWla3LJaF67HCIefm1BqVib3N6Dkyiifpl4
 ZAX5inJDSnK3xR2xT6ZKn/RAjOFowB8rYbPfpRvmwm9JpvJSEYvekdSa1PLvMIfa
 bhrZTHy42zFXEDqF4A9L3Bj2WM3wS7wksS0Hyx6u0IMMAmD3gKWXFipICgONfUxe
 wo54LB+TN5l4bPbmlsADdVd6H800ZjB0OLfuinIjAF8VLn2EG+Mr3T1ABedEr48=
 =yVNm
 -----END PGP SIGNATURE-----
 

DL: Add new helper function for gpu_configuration (#455)

* DL: Add new helper function for gpu_configuration

JIRA: MADLIB-1390

This commit adds a new helper function to query the gpu configuration of
the cluster. The purpose of this function is to list the state of the
cluster w.r.t GPUs, however it is configured. This will be useful in
case of supporting asymmetric clusters.

Also takes in a source param which can be one of 'tensorflow' or
'nvidia'. Defaults to 'tensorflow'. 

Note: Return [] for any host where `nvidia-smi -L` fails regardless of the type of failure.

Example for gpdb

List the state of the cluster, however it is configured:

SELECT * FROM madlib.gpu_configuration();
    gpu_descr     | hostname

-----------------+-------------------------

NVIDIA Tesla P100 | host1

NVIDIA Tesla P100 | host1

Super Duper GPU   | host2

Super Duper GPU   | host2

(4 rows)

Example for postgres

select * from madlib.gpu_configuration();

hostname | gpu_descr

---------+-----------

localhost | NVIDIA Tesla P100

(1 row)

Co-authored-by: Ekta Khanna <ekhanna@pivotal.io>


