Use sandy bridge kernel when DYNAMIC_ARCH=1.
This commit is contained in:
parent
a55821a2ec
commit
54cd65e47f
2
Makefile
2
Makefile
|
@ -231,7 +231,7 @@ ifndef NOFORTRAN
|
||||||
-@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "SUFFIX = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "SUFFIX = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "PSUFFIX = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "PSUFFIX = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
# -@echo "CEXTRALIB = $(CEXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "CEXTRALIB = $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@cat make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@cat make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -60,6 +60,8 @@ extern gotoblas_t gotoblas_NEHALEM;
|
||||||
extern gotoblas_t gotoblas_OPTERON;
|
extern gotoblas_t gotoblas_OPTERON;
|
||||||
extern gotoblas_t gotoblas_OPTERON_SSE3;
|
extern gotoblas_t gotoblas_OPTERON_SSE3;
|
||||||
extern gotoblas_t gotoblas_BARCELONA;
|
extern gotoblas_t gotoblas_BARCELONA;
|
||||||
|
extern gotoblas_t gotoblas_SANDYBRIDGE;
|
||||||
|
extern gotoblas_t gotoblas_BOBCAT;
|
||||||
|
|
||||||
#define VENDOR_INTEL 1
|
#define VENDOR_INTEL 1
|
||||||
#define VENDOR_AMD 2
|
#define VENDOR_AMD 2
|
||||||
|
@ -122,15 +124,24 @@ static gotoblas_t *get_coretype(void){
|
||||||
if (model == 12) return &gotoblas_ATOM;
|
if (model == 12) return &gotoblas_ATOM;
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
//Intel Core (Clarkdale) / Core (Arrandale)
|
//Intel Core (Clarkdale) / Core (Arrandale)
|
||||||
// Pentium (Clarkdale) / Pentium Mobile (Arrandale)
|
// Pentium (Clarkdale) / Pentium Mobile (Arrandale)
|
||||||
// Xeon (Clarkdale), 32nm
|
// Xeon (Clarkdale), 32nm
|
||||||
if (model == 5) return &gotoblas_NEHALEM;
|
if (model == 5) return &gotoblas_NEHALEM;
|
||||||
|
|
||||||
//Intel Xeon Processor 5600 (Westmere-EP)
|
//Intel Xeon Processor 5600 (Westmere-EP)
|
||||||
if (model == 12) return &gotoblas_NEHALEM;
|
//Xeon Processor E7 (Westmere-EX)
|
||||||
return NULL;
|
if (model == 12 || model == 15) return &gotoblas_NEHALEM;
|
||||||
|
|
||||||
|
//Intel Core i5-2000 /i7-2000 (Sandy Bridge)
|
||||||
|
//Intel Core i7-3000 / Xeon E5
|
||||||
|
if (model == 10 || model == 13) return &gotoblas_SANDYBRIDGE;
|
||||||
|
return NULL;
|
||||||
|
case 3:
|
||||||
|
//Intel Sandy Bridge 22nm (Ivy Bridge?)
|
||||||
|
if (model == 10) return &gotoblas_SANDYBRIDGE;
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
case 0xf:
|
case 0xf:
|
||||||
if (model <= 0x2) return &gotoblas_NORTHWOOD;
|
if (model <= 0x2) return &gotoblas_NORTHWOOD;
|
||||||
|
@ -144,7 +155,9 @@ static gotoblas_t *get_coretype(void){
|
||||||
if ((exfamily == 0) || (exfamily == 2)) {
|
if ((exfamily == 0) || (exfamily == 2)) {
|
||||||
if (ecx & (1 << 0)) return &gotoblas_OPTERON_SSE3;
|
if (ecx & (1 << 0)) return &gotoblas_OPTERON_SSE3;
|
||||||
else return &gotoblas_OPTERON;
|
else return &gotoblas_OPTERON;
|
||||||
} else {
|
} else if (exfamily == 5) {
|
||||||
|
return &gotoblas_BOBCAT;
|
||||||
|
} else {
|
||||||
return &gotoblas_BARCELONA;
|
return &gotoblas_BARCELONA;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -178,6 +191,8 @@ static char *corename[] = {
|
||||||
"Opteron(SSE3)",
|
"Opteron(SSE3)",
|
||||||
"Barcelona",
|
"Barcelona",
|
||||||
"Nano",
|
"Nano",
|
||||||
|
"Sandybridge",
|
||||||
|
"Bobcat",
|
||||||
};
|
};
|
||||||
|
|
||||||
char *gotoblas_corename(void) {
|
char *gotoblas_corename(void) {
|
||||||
|
@ -197,7 +212,9 @@ char *gotoblas_corename(void) {
|
||||||
if (gotoblas == &gotoblas_OPTERON) return corename[13];
|
if (gotoblas == &gotoblas_OPTERON) return corename[13];
|
||||||
if (gotoblas == &gotoblas_BARCELONA) return corename[14];
|
if (gotoblas == &gotoblas_BARCELONA) return corename[14];
|
||||||
if (gotoblas == &gotoblas_NANO) return corename[15];
|
if (gotoblas == &gotoblas_NANO) return corename[15];
|
||||||
|
if (gotoblas == &gotoblas_SANDYBRIDGE) return corename[16];
|
||||||
|
if (gotoblas == &gotoblas_BOBCAT) return corename[17];
|
||||||
|
|
||||||
return corename[0];
|
return corename[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue