Browse Source

Merge branch 'develop'

tags/v0.2.2^0
Zhang Xianyi 14 years ago
parent
commit
71d29fa3d0
8 changed files with 77 additions and 45 deletions
  1. +12
    -0
      Changelog.txt
  2. +1
    -1
      Makefile.rule
  3. +7
    -1
      common_linux.h
  4. +33
    -21
      cpuid_x86.c
  5. +6
    -1
      ctest.c
  6. +1
    -1
      driver/others/memory.c
  7. +16
    -19
      exports/gensymbol
  8. +1
    -1
      param.h

+ 12
- 0
Changelog.txt View File

@@ -1,4 +1,16 @@
OpenBLAS ChangeLog
====================================================================
Version 0.2.2
6-July-2012
common:
* Fixed exporting DLL functions bug on Windows/MingW
* Support GNU Hurd (Thank Sylvestre Ledru)
* Support kfreebsd kernel (Thank Sylvestre Ledru)
x86/x86-64:
* Support Intel Sandy Bridge 22nm desktop/mobile CPU
SPARC:
* Improve the detection of SPARC (Thank Sylvestre Ledru)

====================================================================
Version 0.2.1
30-Jun-2012


+ 1
- 1
Makefile.rule View File

@@ -3,7 +3,7 @@
#

# This library's version
VERSION = 0.2.1
VERSION = 0.2.2

# If you set the suffix, the library name will be libopenblas_$(LIBNAMESUFFIX).a
# and libopenblas_$(LIBNAMESUFFIX).so. Meanwhile, the soname in shared library


+ 7
- 1
common_linux.h View File

@@ -86,7 +86,13 @@ static inline int my_set_mempolicy(int mode, const unsigned long *addr, unsigned
return syscall(SYS_set_mempolicy, mode, addr, flag);
}

static inline int my_gettid(void) { return syscall(SYS_gettid); }
static inline int my_gettid(void) {
#ifdef SYS_gettid
return syscall(SYS_gettid);
#else
return getpid();
#endif
}

#endif
#endif

+ 33
- 21
cpuid_x86.c View File

@@ -975,27 +975,33 @@ int get_cpuname(void){
return CPUTYPE_DUNNINGTON;
}
break;
case 2:
switch (model) {
case 5:
//Intel Core (Clarkdale) / Core (Arrandale)
// Pentium (Clarkdale) / Pentium Mobile (Arrandale)
// Xeon (Clarkdale), 32nm
return CPUTYPE_NEHALEM;
case 10:
//Intel Core i5-2000 /i7-2000 (Sandy Bridge)
return CPUTYPE_SANDYBRIDGE;
case 12:
//Xeon Processor 5600 (Westmere-EP)
return CPUTYPE_NEHALEM;
case 13:
//Intel Core i7-3000 / Xeon E5 (Sandy Bridge)
return CPUTYPE_SANDYBRIDGE;
case 15:
//Xeon Processor E7 (Westmere-EX)
return CPUTYPE_NEHALEM;
}
break;
case 2:
switch (model) {
case 5:
//Intel Core (Clarkdale) / Core (Arrandale)
// Pentium (Clarkdale) / Pentium Mobile (Arrandale)
// Xeon (Clarkdale), 32nm
return CPUTYPE_NEHALEM;
case 10:
//Intel Core i5-2000 /i7-2000 (Sandy Bridge)
return CPUTYPE_SANDYBRIDGE;
case 12:
//Xeon Processor 5600 (Westmere-EP)
return CPUTYPE_NEHALEM;
case 13:
//Intel Core i7-3000 / Xeon E5 (Sandy Bridge)
return CPUTYPE_SANDYBRIDGE;
case 15:
//Xeon Processor E7 (Westmere-EX)
return CPUTYPE_NEHALEM;
}
break;
case 3:
switch (model) {
case 10:
return CPUTYPE_SANDYBRIDGE;
}
break;
}
break;
case 0x7:
@@ -1349,6 +1355,12 @@ int get_coretype(void){
return CORE_NEHALEM;
}
break;
case 3:
switch (model) {
case 10:
return CORE_SANDYBRIDGE;
}
break;
}
break;



+ 6
- 1
ctest.c View File

@@ -34,7 +34,7 @@ COMPILER_GNU
OS_LINUX
#endif

#if defined(__FreeBSD__)
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
OS_FREEBSD
#endif

@@ -70,6 +70,11 @@ OS_CYGWIN_NT
OS_INTERIX
#endif

#if defined(__gnu_hurd__)
/* Hurd is very similar to GNU/Linux, it should work out of the box */
OS_LINUX
#endif

#if defined(__i386) || defined(_X86)
ARCH_X86
#endif


+ 1
- 1
driver/others/memory.c View File

@@ -1128,7 +1128,7 @@ static BLASULONG init_lock = 0UL;
static void _touch_memory(blas_arg_t *arg, BLASLONG *range_m, BLASLONG *range_n,
void *sa, void *sb, BLASLONG pos) {

#ifndef ARCH_POWER
#if !defined(ARCH_POWER) && !defined(ARCH_SPARC)

long size;
BLASULONG buffer;


+ 16
- 19
exports/gensymbol View File

@@ -2760,30 +2760,27 @@ if ($ARGV[0] eq "win2k"){
print "EXPORTS\n";
$count = 1;
#remove openblas_set_num_threads
@underscore_objs = grep /[^openblas_set_num_threads]/,@underscore_objs;
foreach $objs (@underscore_objs) {
$uppercase = $objs;
$uppercase =~ tr/[a-z]/[A-Z]/;
print "\t$objs=$objs","_ \@", $count, "\n";
$count ++;
print "\t",$objs, "_=$objs","_ \@", $count, "\n";
$count ++;
print "\t$uppercase=$objs", "_ \@", $count, "\n";
$count ++;
unless ($objs =~ /openblas_set_num_threads/) { #remove openblas_set_num_threads
$uppercase = $objs;
$uppercase =~ tr/[a-z]/[A-Z]/;
print "\t$objs=$objs","_ \@", $count, "\n";
$count ++;
print "\t",$objs, "_=$objs","_ \@", $count, "\n";
$count ++;
print "\t$uppercase=$objs", "_ \@", $count, "\n";
$count ++;
}
}
#for openblas_set_num_threads
#for openblas_set_num_threads
print "\topenblas_set_num_threads_=openblas_set_num_threads_ \@", $count, "\n";
$count ++;
foreach $objs (@no_underscore_objs) {
print "\t",$objs,"=$objs"," \@", $count, "\n";
$count ++;
# if ($ARGV[4] == 0) {
foreach $objs (@no_underscore_objs) {
print "\t",$objs,"=$objs"," \@", $count, "\n";
$count ++;
}
# }
}
exit(0);
}


+ 1
- 1
param.h View File

@@ -1482,7 +1482,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define GEMM_THREAD gemm_thread_mn
#endif

#if defined(SPARC) && defined(V9)
#if (defined(SPARC) && defined(V9)) || defined(__sparc_v9__)

#define SNUMOPT 2
#define DNUMOPT 2


Loading…
Cancel
Save