From 21035e7022dc6a0d513e83e58f30825fa0cb274d Mon Sep 17 00:00:00 2001 From: zhangjun Date: Wed, 9 Jun 2021 09:45:20 +0000 Subject: [PATCH] auto detect cpu avx instruction set --- python/paddle_serving_server/server.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/python/paddle_serving_server/server.py b/python/paddle_serving_server/server.py index 34bf66f9..9b56d6d7 100755 --- a/python/paddle_serving_server/server.py +++ b/python/paddle_serving_server/server.py @@ -330,12 +330,21 @@ class Server(object): def use_mkl(self, flag): self.mkl_flag = flag + def check_avx(self): + p = subprocess.Popen(['cat /proc/cpuinfo | grep avx 2>/dev/null'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) + out, err = p.communicate() + if err == '' and len(out) > 0: + return True + else: + return False + def get_device_version(self): avx_flag = False - mkl_flag = self.mkl_flag - r = os.system("cat /proc/cpuinfo | grep avx > /dev/null 2>&1") - if r == 0: + avx_support = self.check_avx() + if avx_suppport: avx_flag = True + self.use_mkl(True) + mkl_flag = self.mkl_flag if avx_flag: if mkl_flag: device_version = "cpu-avx-mkl" -- GitLab