Browse Source

Merge pull request #745 from jakirkham/minor_fix_scipy_prof

BENCH: Minor fixes in SciPy benchmarks
tags/v0.2.16.rc1
Zhang Xianyi 10 years ago
parent
commit
fa3018c30e
2 changed files with 86 additions and 86 deletions
  1. +43
    -43
      benchmark/scripts/SCIPY/dsyrk.py
  2. +43
    -43
      benchmark/scripts/SCIPY/ssyrk.py

+ 43
- 43
benchmark/scripts/SCIPY/dsyrk.py View File

@@ -1,58 +1,58 @@
#!/usr/bin/python
#!/usr/bin/env python


import os import os
import sys import sys
import time import time
import numpy import numpy
from numpy import zeros
from numpy.random import randn from numpy.random import randn
from scipy.linalg import blas from scipy.linalg import blas


def run_dsyrk(N,l):


A = randn(N,N).astype('float64')
C = randn(N,N).astype('float64')
def run_dsyrk(N, l):


A = randn(N, N).astype('float64', order='F')
C = zeros((N, N), dtype='float64', order='F')


start = time.time();
for i in range(0,l):
C = blas.dsyrk(1.0,A)
end = time.time()
timediff = (end -start)
mflops = ( N*N*N) *l / timediff
mflops *= 1e-6
start = time.time()
for i in range(0, l):
blas.dsyrk(1.0, A, c=C, overwrite_c=True)
end = time.time()


size = "%dx%d" % (N,N)
print("%14s :\t%20f MFlops\t%20f sec" % (size,mflops,timediff))
timediff = (end - start)
mflops = (N * N * N) * l / timediff
mflops *= 1e-6


size = "%dx%d" % (N, N)
print("%14s :\t%20f MFlops\t%20f sec" % (size, mflops, timediff))


if __name__ == "__main__":
N=128
NMAX=2048
NINC=128
LOOPS=1

z=0
for arg in sys.argv:
if z == 1:
N = int(arg)
elif z == 2:
NMAX = int(arg)
elif z == 3:
NINC = int(arg)
elif z == 4:
LOOPS = int(arg)

z = z + 1

if 'OPENBLAS_LOOPS' in os.environ:
p = os.environ['OPENBLAS_LOOPS']
if p:
LOOPS = int(p);

print("From: %d To: %d Step=%d Loops=%d" % (N, NMAX, NINC, LOOPS))
print("\tSIZE\t\t\tFlops\t\t\t\t\tTime")

for i in range (N,NMAX+NINC,NINC):
run_dsyrk(i,LOOPS)


if __name__ == "__main__":
N = 128
NMAX = 2048
NINC = 128
LOOPS = 1

z = 0
for arg in sys.argv:
if z == 1:
N = int(arg)
elif z == 2:
NMAX = int(arg)
elif z == 3:
NINC = int(arg)
elif z == 4:
LOOPS = int(arg)

z = z + 1

if 'OPENBLAS_LOOPS' in os.environ:
p = os.environ['OPENBLAS_LOOPS']
if p:
LOOPS = int(p)

print("From: %d To: %d Step=%d Loops=%d" % (N, NMAX, NINC, LOOPS))
print("\tSIZE\t\t\tFlops\t\t\t\t\tTime")

for i in range(N, NMAX + NINC, NINC):
run_dsyrk(i, LOOPS)

+ 43
- 43
benchmark/scripts/SCIPY/ssyrk.py View File

@@ -1,58 +1,58 @@
#!/usr/bin/python
#!/usr/bin/env python


import os import os
import sys import sys
import time import time
import numpy import numpy
from numpy import zeros
from numpy.random import randn from numpy.random import randn
from scipy.linalg import blas from scipy.linalg import blas


def run_ssyrk(N,l):


A = randn(N,N).astype('float32')
C = randn(N,N).astype('float32')
def run_ssyrk(N, l):


A = randn(N, N).astype('float32', order='F')
C = zeros((N, N), dtype='float32', order='F')


start = time.time();
for i in range(0,l):
C = blas.ssyrk(1.0,A)
end = time.time()
timediff = (end -start)
mflops = ( N*N*N) *l / timediff
mflops *= 1e-6
start = time.time()
for i in range(0, l):
blas.ssyrk(1.0, A, c=C, overwrite_c=True)
end = time.time()


size = "%dx%d" % (N,N)
print("%14s :\t%20f MFlops\t%20f sec" % (size,mflops,timediff))
timediff = (end - start)
mflops = (N * N * N) * l / timediff
mflops *= 1e-6


size = "%dx%d" % (N, N)
print("%14s :\t%20f MFlops\t%20f sec" % (size, mflops, timediff))


if __name__ == "__main__":
N=128
NMAX=2048
NINC=128
LOOPS=1

z=0
for arg in sys.argv:
if z == 1:
N = int(arg)
elif z == 2:
NMAX = int(arg)
elif z == 3:
NINC = int(arg)
elif z == 4:
LOOPS = int(arg)

z = z + 1

if 'OPENBLAS_LOOPS' in os.environ:
p = os.environ['OPENBLAS_LOOPS']
if p:
LOOPS = int(p);

print("From: %d To: %d Step=%d Loops=%d" % (N, NMAX, NINC, LOOPS))
print("\tSIZE\t\t\tFlops\t\t\t\t\tTime")

for i in range (N,NMAX+NINC,NINC):
run_ssyrk(i,LOOPS)


if __name__ == "__main__":
N = 128
NMAX = 2048
NINC = 128
LOOPS = 1

z = 0
for arg in sys.argv:
if z == 1:
N = int(arg)
elif z == 2:
NMAX = int(arg)
elif z == 3:
NINC = int(arg)
elif z == 4:
LOOPS = int(arg)

z = z + 1

if 'OPENBLAS_LOOPS' in os.environ:
p = os.environ['OPENBLAS_LOOPS']
if p:
LOOPS = int(p)

print("From: %d To: %d Step=%d Loops=%d" % (N, NMAX, NINC, LOOPS))
print("\tSIZE\t\t\tFlops\t\t\t\t\tTime")

for i in range(N, NMAX + NINC, NINC):
run_ssyrk(i, LOOPS)

Loading…
Cancel
Save