From f728ee8ea10a6f68b7a623ae11b3d05638e18bd7 Mon Sep 17 00:00:00 2001
From: Dominik Bartkiewicz <bart@icm.edu.pl>
Date: Wed, 5 Feb 2014 09:49:28 -0800
Subject: [PATCH] Added support for selecting AMD GP

Set GPU_DEVICE_ORDINAL environment variable.
---
 NEWS                            | 1 +
 doc/html/team.shtml             | 3 ++-
 src/plugins/gres/gpu/gres_gpu.c | 4 ++++
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index 0917cc05516..baf99774054 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,7 @@ documents those changes that are of interest to users and admins.
 
 * Changes in Slurm 2.6.7
 ========================
+ -- Added support for selecting AMD GPU by setting GPU_DEVICE_ORDINAL env var.
 
 * Changes in Slurm 2.6.6
 ========================
diff --git a/doc/html/team.shtml b/doc/html/team.shtml
index 775d0695f9d..e2c17209b25 100644
--- a/doc/html/team.shtml
+++ b/doc/html/team.shtml
@@ -33,6 +33,7 @@ Lead Slurm developers are:
 <br>
 <li>Jason W. Bacon</li>
 <li>Susanne Balle (HP)</li>
+<li>Dominik Bartkiewicz (University of Warsaw, Poland)</li>
 <li>Ralph Bean (Rochester Institute of Technology)</li>
 <li>Alexander Bersenev (Institute of Mathematics and Mechanics, Russia)</li>
 <li>David Bigagli (SchedMD)</li>
@@ -180,6 +181,6 @@ Lead Slurm developers are:
 <!-- INDIVIDUALS, PLEASE KEEP IN ALPHABETICAL ORDER -->
 </ul>
 
-<p style="text-align:center;">Last modified 30 October 2013</p>
+<p style="text-align:center;">Last modified 5 February 2014</p>
 
 <!--#include virtual="footer.txt"-->
diff --git a/src/plugins/gres/gpu/gres_gpu.c b/src/plugins/gres/gpu/gres_gpu.c
index bc7b1bfc250..cb208ecfab7 100644
--- a/src/plugins/gres/gpu/gres_gpu.c
+++ b/src/plugins/gres/gpu/gres_gpu.c
@@ -249,6 +249,8 @@ extern void job_set_env(char ***job_env_ptr, void *gres_ptr)
 	if (dev_list) {
 		env_array_overwrite(job_env_ptr,"CUDA_VISIBLE_DEVICES",
 				    dev_list);
+		env_array_overwrite(job_env_ptr,"GPU_DEVICE_ORDINAL",
+				    dev_list);
 		xfree(dev_list);
 	}
 }
@@ -292,6 +294,8 @@ extern void step_set_env(char ***job_env_ptr, void *gres_ptr)
 	if (dev_list) {
 		env_array_overwrite(job_env_ptr,"CUDA_VISIBLE_DEVICES",
 				    dev_list);
+		env_array_overwrite(job_env_ptr,"GPU_DEVICE_ORDINAL",
+				    dev_list);
 		xfree(dev_list);
 	}
 }
-- 
GitLab