@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_cgemm(N,l): | |||||
A = randn(N,N).astype('float32') + randn(N,N).astype('float32') * 1j; | |||||
B = randn(N,N).astype('float32') + randn(N,N).astype('float32') * 1j; | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 8*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_cgemm(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_cgemv(N,l): | |||||
A = randn(N,N).astype('float32') + randn(N,N).astype('float32') * 1j; | |||||
B = randn(N).astype('float32') + randn(N).astype('float32') * 1j; | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 8*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_cgemv(i,LOOPS) | |||||
@@ -0,0 +1,58 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
from scipy.linalg.blas import daxpy | |||||
def run_daxpy(N,l): | |||||
x = randn(N).astype('float64') | |||||
y = randn(N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
y = daxpy(x,y, a=2.0 ) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*N ) *l / timediff | |||||
mflops *= 1e-6 | |||||
size = "%d" % (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_daxpy(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_ddot(N,l): | |||||
A = randn(N).astype('float64') | |||||
B = randn(N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*N ) *l / timediff | |||||
mflops *= 1e-6 | |||||
size = "%d" % (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_ddot(i,LOOPS) | |||||
@@ -0,0 +1,55 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_deig(N,l): | |||||
A = randn(N,N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
la,v = numpy.linalg.eig(A) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 26.33 *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_deig(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_dgemm(N,l): | |||||
A = randn(N,N).astype('float64') | |||||
B = randn(N,N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*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_dgemm(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_dgemv(N,l): | |||||
A = randn(N,N).astype('float64') | |||||
B = randn(N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*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_dgemv(i,LOOPS) | |||||
@@ -0,0 +1,58 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
from scipy.linalg.lapack import dgesv | |||||
def run_dgesv(N,l): | |||||
a = randn(N,N).astype('float64') | |||||
b = randn(N,N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
dgesv(a,b,1,1) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2.0/3.0 *N*N*N + 2.0*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_dgesv(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_dsolve(N,l): | |||||
A = randn(N,N).astype('float64') | |||||
B = randn(N,N).astype('float64') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.linalg.solve(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2.0/3.0 *N*N*N + 2.0*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_dsolve(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_sdot(N,l): | |||||
A = randn(N).astype('float32') | |||||
B = randn(N).astype('float32') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*N ) *l / timediff | |||||
mflops *= 1e-6 | |||||
size = "%d" % (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_sdot(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_sgemm(N,l): | |||||
A = randn(N,N).astype('float32') | |||||
B = randn(N,N).astype('float32') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*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_sgemm(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_sgemv(N,l): | |||||
A = randn(N,N).astype('float32') | |||||
B = randn(N).astype('float32') | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 2*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_sgemv(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_zgemm(N,l): | |||||
A = randn(N,N).astype('float64') + randn(N,N).astype('float64') * 1j; | |||||
B = randn(N,N).astype('float64') + randn(N,N).astype('float64') * 1j; | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 8*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_zgemm(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/python | |||||
import os | |||||
import sys | |||||
import time | |||||
import numpy | |||||
from numpy.random import randn | |||||
def run_zgemv(N,l): | |||||
A = randn(N,N).astype('float64') + randn(N,N).astype('float64') * 1j; | |||||
B = randn(N).astype('float64') + randn(N).astype('float64') * 1j; | |||||
start = time.time(); | |||||
for i in range(0,l): | |||||
ref = numpy.dot(A,B) | |||||
end = time.time() | |||||
timediff = (end -start) | |||||
mflops = ( 8*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_zgemv(i,LOOPS) | |||||
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = single(rand(n,n)) + single(rand(n,n)) * 1i; | |||||
B = single(rand(n,n)) + single(rand(n,n)) * 1i; | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 4.0 * 2.0*n*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = single(rand(n,n)) + single(rand(n,n)) * 1i; | |||||
B = single(rand(n,1)) + single(rand(n,1)) * 1i; | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 4.0 * 2.0*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
[V,lambda] = eig(A); | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 26.33 *n*n*n ) *loops / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg ); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)); | |||||
B = double(rand(n,n)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 2.0*n*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)); | |||||
B = double(rand(n,1)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 2.0*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,59 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)); | |||||
B = double(rand(n,n)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
x = linsolve(A,B); | |||||
#x = A / B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
#r = norm(A*x - B)/norm(B) | |||||
mflops = ( 2.0/3.0 *n*n*n + 2.0*n*n*n ) *loops / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg ); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = single(rand(n,n)); | |||||
B = single(rand(n,n)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 2.0*n*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = single(rand(n,n)); | |||||
B = single(rand(n,1)); | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 2.0*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)) + double(rand(n,n)) * 1i; | |||||
B = double(rand(n,n)) + double(rand(n,n)) * 1i; | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 4.0 * 2.0*n*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,56 @@ | |||||
#!/usr/bin/octave --silent | |||||
nfrom = 128 ; | |||||
nto = 2048; | |||||
nstep = 128; | |||||
loops = 1; | |||||
arg_list = argv(); | |||||
for i = 1:nargin | |||||
switch(i) | |||||
case 1 | |||||
nfrom = str2num(arg_list{i}); | |||||
case 2 | |||||
nto = str2num(arg_list{i}); | |||||
case 3 | |||||
nstep = str2num(arg_list{i}); | |||||
case 4 | |||||
loops = str2num(arg_list{i}); | |||||
endswitch | |||||
endfor | |||||
p = getenv("OPENBLAS_LOOPS"); | |||||
if p | |||||
loops = str2num(p); | |||||
endif | |||||
printf("From %d To %d Step=%d Loops=%d\n",nfrom, nto, nstep, loops); | |||||
printf(" SIZE FLOPS TIME\n"); | |||||
n = nfrom; | |||||
while n <= nto | |||||
A = double(rand(n,n)) + double(rand(n,n)) * 1i; | |||||
B = double(rand(n,1)) + double(rand(n,1)) * 1i; | |||||
start = clock(); | |||||
l=0; | |||||
while l < loops | |||||
C = A * B; | |||||
l = l + 1; | |||||
endwhile | |||||
timeg = etime(clock(), start); | |||||
mflops = ( 4.0 * 2.0*n*n *loops ) / ( timeg * 1.0e6 ); | |||||
st1 = sprintf("%dx%d : ", n,n); | |||||
printf("%20s %10.2f MFlops %10.6f sec\n", st1, mflops, timeg); | |||||
n = n + nstep; | |||||
endwhile |
@@ -0,0 +1,62 @@ | |||||
#!/usr/bin/Rscript | |||||
argv <- commandArgs(trailingOnly = TRUE) | |||||
nfrom = 128 | |||||
nto = 2048 | |||||
nstep = 128 | |||||
loops = 1 | |||||
if ( length(argv) > 0 ) { | |||||
for ( z in 1:length(argv) ) { | |||||
if ( z == 1 ) { | |||||
nfrom <- as.numeric(argv[z]) | |||||
} else if ( z==2 ) { | |||||
nto <- as.numeric(argv[z]) | |||||
} else if ( z==3 ) { | |||||
nstep <- as.numeric(argv[z]) | |||||
} else if ( z==4 ) { | |||||
loops <- as.numeric(argv[z]) | |||||
} | |||||
} | |||||
} | |||||
p=Sys.getenv("OPENBLAS_LOOPS") | |||||
if ( p != "" ) { | |||||
loops <- as.numeric(p) | |||||
} | |||||
cat(sprintf("From %.0f To %.0f Step=%.0f Loops=%.0f\n",nfrom, nto, nstep, loops)) | |||||
cat(sprintf(" SIZE Flops Time\n")) | |||||
n = nfrom | |||||
while ( n <= nto ) { | |||||
A <- matrix(runif(n*n), ncol = n, nrow = n, byrow = TRUE) | |||||
l = 1 | |||||
start <- proc.time()[3] | |||||
while ( l <= loops ) { | |||||
ev <- eigen(A) | |||||
l = l + 1 | |||||
} | |||||
end <- proc.time()[3] | |||||
timeg = end - start | |||||
mflops = (26.66 *n*n*n ) * loops / ( timeg * 1.0e6 ) | |||||
st = sprintf("%.0fx%.0f :",n , n) | |||||
cat(sprintf("%20s %10.2f MFlops %10.6f sec\n", st, mflops, timeg)) | |||||
n = n + nstep | |||||
} | |||||
@@ -0,0 +1,63 @@ | |||||
#!/usr/bin/Rscript | |||||
argv <- commandArgs(trailingOnly = TRUE) | |||||
nfrom = 128 | |||||
nto = 2048 | |||||
nstep = 128 | |||||
loops = 1 | |||||
if ( length(argv) > 0 ) { | |||||
for ( z in 1:length(argv) ) { | |||||
if ( z == 1 ) { | |||||
nfrom <- as.numeric(argv[z]) | |||||
} else if ( z==2 ) { | |||||
nto <- as.numeric(argv[z]) | |||||
} else if ( z==3 ) { | |||||
nstep <- as.numeric(argv[z]) | |||||
} else if ( z==4 ) { | |||||
loops <- as.numeric(argv[z]) | |||||
} | |||||
} | |||||
} | |||||
p=Sys.getenv("OPENBLAS_LOOPS") | |||||
if ( p != "" ) { | |||||
loops <- as.numeric(p) | |||||
} | |||||
cat(sprintf("From %.0f To %.0f Step=%.0f Loops=%.0f\n",nfrom, nto, nstep, loops)) | |||||
cat(sprintf(" SIZE Flops Time\n")) | |||||
n = nfrom | |||||
while ( n <= nto ) { | |||||
A <- matrix(runif(n*n), ncol = n, nrow = n, byrow = TRUE) | |||||
B <- matrix(runif(n*n), ncol = n, nrow = n, byrow = TRUE) | |||||
l = 1 | |||||
start <- proc.time()[3] | |||||
while ( l <= loops ) { | |||||
C <- A %*% B | |||||
l = l + 1 | |||||
} | |||||
end <- proc.time()[3] | |||||
timeg = end - start | |||||
mflops = ( 2.0 *n*n*n ) * loops / ( timeg * 1.0e6 ) | |||||
st = sprintf("%.0fx%.0f :",n , n) | |||||
cat(sprintf("%20s %10.2f MFlops %10.6f sec\n", st, mflops, timeg)) | |||||
n = n + nstep | |||||
} | |||||
@@ -0,0 +1,63 @@ | |||||
#!/usr/bin/Rscript | |||||
argv <- commandArgs(trailingOnly = TRUE) | |||||
nfrom = 128 | |||||
nto = 2048 | |||||
nstep = 128 | |||||
loops = 1 | |||||
if ( length(argv) > 0 ) { | |||||
for ( z in 1:length(argv) ) { | |||||
if ( z == 1 ) { | |||||
nfrom <- as.numeric(argv[z]) | |||||
} else if ( z==2 ) { | |||||
nto <- as.numeric(argv[z]) | |||||
} else if ( z==3 ) { | |||||
nstep <- as.numeric(argv[z]) | |||||
} else if ( z==4 ) { | |||||
loops <- as.numeric(argv[z]) | |||||
} | |||||
} | |||||
} | |||||
p=Sys.getenv("OPENBLAS_LOOPS") | |||||
if ( p != "" ) { | |||||
loops <- as.numeric(p) | |||||
} | |||||
cat(sprintf("From %.0f To %.0f Step=%.0f Loops=%.0f\n",nfrom, nto, nstep, loops)) | |||||
cat(sprintf(" SIZE Flops Time\n")) | |||||
n = nfrom | |||||
while ( n <= nto ) { | |||||
A <- matrix(runif(n*n), ncol = n, nrow = n, byrow = TRUE) | |||||
B <- matrix(runif(n*n), ncol = n, nrow = n, byrow = TRUE) | |||||
l = 1 | |||||
start <- proc.time()[3] | |||||
while ( l <= loops ) { | |||||
solve(A,B) | |||||
l = l + 1 | |||||
} | |||||
end <- proc.time()[3] | |||||
timeg = end - start | |||||
mflops = (2.0/3.0 *n*n*n + 2.0 *n*n*n ) * loops / ( timeg * 1.0e6 ) | |||||
st = sprintf("%.0fx%.0f :",n , n) | |||||
cat(sprintf("%20s %10.2f MFlops %10.6f sec\n", st, mflops, timeg)) | |||||
n = n + nstep | |||||
} | |||||