Skip to content

Commit 3a2ae95

Browse files
committed
updated performance measurement scripts and instruction manual
1 parent 1dd01b6 commit 3a2ae95

File tree

3 files changed

+261
-143
lines changed

3 files changed

+261
-143
lines changed

src/scripts/perf/fftPerformanceTesting.py

+19-18
Original file line numberDiff line numberDiff line change
@@ -91,18 +91,18 @@ def executable(library):
9191

9292
if library == 'clFFT' or library == 'null':
9393
if sys.platform == 'win32':
94-
exe = 'Client.exe'
94+
exe = 'clFFT-client-2.5.0.exe'
9595
elif sys.platform == 'linux2':
96-
exe = 'Client'
96+
exe = 'clFFT-client-2.5.0'
97+
elif library == 'cuFFT':
98+
if sys.platform == 'win32':
99+
exe = 'cuFFT-Client.exe'
100+
elif sys.platform == 'linux2':
101+
exe = 'cuFFT-Client'
97102
else:
98103
print 'ERROR: unknown library -- cannot determine executable name'
99104
quit()
100105

101-
if not os.path.isfile(exe):
102-
error_message = 'ERROR: could not find client named ' + exe
103-
print error_message
104-
quit()
105-
106106
return exe
107107

108108
def max_mem_available_in_bytes(exe, device):
@@ -115,11 +115,8 @@ def max_mem_available_in_bytes(exe, device):
115115
return int(maxMemoryAvailable.group(0))
116116

117117
def max_problem_size(exe, layout, precision, device):
118-
if layout == 'ci' or layout == 'cp':
118+
if layout == 1 or layout == 1:
119119
numbers_in_one_datapoint = 2
120-
else:
121-
print 'max_problem_size(): unknown layout'
122-
quit()
123120

124121
if precision == 'single':
125122
bytes_in_one_number = 4
@@ -129,18 +126,22 @@ def max_problem_size(exe, layout, precision, device):
129126
print 'max_problem_size(): unknown precision'
130127
quit()
131128

132-
max_problem_size = max_mem_available_in_bytes(exe, device) / (numbers_in_one_datapoint * bytes_in_one_number)
133-
max_problem_size = max_problem_size / 16
129+
max_problem_size = pow(2,25) #max_mem_available_in_bytes(exe, device)
130+
if layout == '5':
131+
max_problem_size = pow(2,24) #max_mem_available_in_bytes(exe, device)
132+
#max_problem_size=max_problem_size/ (numbers_in_one_datapoint * bytes_in_one_number)
133+
#max_problem_size = max_problem_size / 16
134134
return max_problem_size
135135

136136
def maxBatchSize(lengthx, lengthy, lengthz, layout, precision, exe, device):
137137
problemSize = int(lengthx) * int(lengthy) * int(lengthz)
138138
maxBatchSize = max_problem_size(exe, layout, precision, device) / problemSize
139-
if int(lengthx) == pow(2,16) or int(lengthx) == pow(2,17):
140-
# special cases in the kernel. extra padding is added in, so we need to shrink the batch size to accommodate
141-
return str(maxBatchSize/2)
142-
else:
143-
return str(maxBatchSize)
139+
return str(maxBatchSize)
140+
#if int(lengthx) == pow(2,16) or int(lengthx) == pow(2,17):
141+
# # special cases in the kernel. extra padding is added in, so we need to shrink the batch size to accommodate
142+
# return str(maxBatchSize/2)
143+
#else:
144+
# return str(maxBatchSize)
144145

145146
def create_ini_file_if_requested(args):
146147
if args.createIniFilename:

0 commit comments

Comments
 (0)