Merge pull request #1169 from martin-frbg/cblas_xerbla
authorMartin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Thu, 4 May 2017 17:32:50 +0000 (19:32 +0200)
committerGitHub <noreply@github.com>
Thu, 4 May 2017 17:32:50 +0000 (19:32 +0200)
Add trivial implementation of cblas_xerbla

README.md
cpuid_x86.c
cpuid_zarch.c
driver/others/dynamic.c
getarch.c

index c933f62..709da78 100644 (file)
--- a/README.md
+++ b/README.md
@@ -51,18 +51,18 @@ The library can be installed as below -
 
  * On Ubuntu:
 
-    wget -q http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/public.gpg -O- | sudo apt-key add -
-    echo "deb http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/ trusty main" | sudo tee /etc/apt/sources.list.d/ibm-xl-compiler-eval.list
-    sudo apt-get update
-    sudo apt-get install libxlmass-devel.8.1.3
+    wget -q http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/public.gpg -O- | sudo apt-key add -</br>
+    echo "deb http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/ trusty main" | sudo tee /etc/apt/sources.list.d/ibm-xl-compiler-eval.list</br>
+    sudo apt-get update</br>
+    sudo apt-get install libxlmass-devel.8.1.3</br>
 
  * On RHEL/CentOS:
 
-    wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/repodata/repomd.xml.key
-    sudo rpm --import repomd.xml.key
-    wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/ibm-xl-compiler-eval.repo
-    sudo cp ibm-xl-compiler-eval.repo /etc/yum.repos.d/
-    sudo yum install libxlmass-devel.8.1.3
+    wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/repodata/repomd.xml.key</br>
+    sudo rpm --import repomd.xml.key</br>
+    wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/ibm-xl-compiler-eval.repo</br>
+    sudo cp ibm-xl-compiler-eval.repo /etc/yum.repos.d/</br>
+    sudo yum install libxlmass-devel.8.1.3</br>
 
 After installing MASS library, compile openblas with USE_MASS=1.
 
index 201aa81..ab2ecdc 100644 (file)
@@ -1304,6 +1304,7 @@ int get_cpuname(void){
          else
            return CPUTYPE_BARCELONA; //OS don't support AVX.
        case 0:
+        case 8:
          switch(exmodel){
          case 1: //AMD Trinity
            if(support_avx())
@@ -1839,6 +1840,7 @@ int get_coretype(void){
          else
            return CORE_BARCELONA; //OS don't support AVX.
        case 0:
+        case 8:
          switch(exmodel){
          case 1: //AMD Trinity
            if(support_avx())
index e2e3b04..4e19354 100644 (file)
@@ -42,9 +42,27 @@ static char *cpuname_lower[] = {
 
 int detect(void)
 {
-   // return CPU_GENERIC;
- return CPU_Z13; 
-    
+  FILE *infile;
+  char buffer[512], *p;
+
+  p = (char *)NULL;
+  infile = fopen("/proc/sysinfo", "r");
+  while (fgets(buffer, sizeof(buffer), infile)){
+    if (!strncmp("Type", buffer, 4)){
+        p = strchr(buffer, ':') + 2;
+#if 0
+        fprintf(stderr, "%s\n", p);
+#endif
+        break;
+      }
+  }
+
+  fclose(infile);
+
+  if (strstr(p, "2964")) return CPU_Z13;
+  if (strstr(p, "2965")) return CPU_Z13;
+
+  return CPU_GENERIC;
 }
 
 void get_libname(void)
index 90410f7..e1e159d 100644 (file)
@@ -365,7 +365,7 @@ static gotoblas_t *get_coretype(void){
            openblas_warning(FALLBACK_VERBOSE, BARCELONA_FALLBACK);
            return &gotoblas_BARCELONA; //OS doesn't support AVX. Use old kernels.
          }
-       }else if(model == 0){
+       }else if(model == 0 || model == 8){
          if (exmodel == 1) {
            //AMD Trinity
            if(support_avx())
index 728655b..e388572 100644 (file)
--- a/getarch.c
+++ b/getarch.c
@@ -488,8 +488,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     "-DHAVE_MMX -DHAVE_SSE -DHAVE_SSE2 -DHAVE_SSE3 -DHAVE_SSE4_1 -DHAVE_SSE4_2 " \
                     "-DHAVE_SSE4A -DHAVE_MISALIGNSSE -DHAVE_128BITFPU -DHAVE_FASTMOVU -DHAVE_CFLUSH " \
                     "-DHAVE_AVX -DHAVE_FMA3 -DFMA3"
-#define LIBNAME   "excavator"
-#define CORENAME  "EXCAVATOR"
+#define LIBNAME   "zen"
+#define CORENAME  "ZEN"
 #endif