From fb217f9ffc1b40d49feae8d4683efa5d8c5da1c9 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期四, 11 七月 2019 12:36:38 +0800
Subject: [PATCH] add protection

---
 gogpu.go |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/gogpu.go b/gogpu.go
index 7466a6b..5ecd233 100644
--- a/gogpu.go
+++ b/gogpu.go
@@ -23,6 +23,21 @@
 	return int(C.get_idle_gpu(C.int(memSize)))
 }
 
+// SatisfyGPU satisfy unit "M"
+func SatisfyGPU(index, memSize, reserve int) bool {
+	info, err := Info()
+	if err != nil || info.Count >= index {
+		fmt.Println("SatisfyGPU no gpu or index ilegal: ", index, " gpu count : ", info.Count)
+		return false
+	}
+
+	var M1 int64 = 1024 * 1024
+	if info.Info[index].GpuMemoryFree-int64(memSize)*M1 > int64(reserve)*M1 {
+		return true
+	}
+	return false
+}
+
 // GPURank sort
 type GPURank []GpuUnitInfo
 

--
Gitblit v1.8.0