this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

removed unused and unmaintained mk_test.py

+2 -130
+1
Makefile
··· 22 22 23 23 testall: 24 24 # The simd and int32_t types may or may not work on your machine 25 + make -C test testcpp && test/testcpp 25 26 make -C test DATATYPE=simd CFLAGADD="$(CFLAGADD)" test 26 27 make -C test DATATYPE=int32_t CFLAGADD="$(CFLAGADD)" test 27 28 make -C test DATATYPE=int16_t CFLAGADD="$(CFLAGADD)" test
+1 -8
test/Makefile
··· 93 93 @echo "======higher dimensions type=$(DATATYPE))" 94 94 @./testkiss.py 95 95 96 - selftest.c: 97 - ./mk_test.py 10 12 14 > selftest.c 98 - selftest_short.c: 99 - ./mk_test.py -s 10 12 14 > selftest_short.c 100 - 101 - 102 - CXXFLAGS=-O3 -ffast-math -fomit-frame-pointer -I.. -I../tools -W -Wall 96 + CXXFLAGS=-O3 -ffast-math -fomit-frame-pointer -I.. -I../tools -W -Wall -march=native -mtune=native 103 97 testcpp: testcpp.cc ../kissfft.hh 104 98 $(CXX) -o $@ $(CXXFLAGS) testcpp.cc -lm 105 - 106 99 107 100 clean: 108 101 rm -f *~ bm_* st_* tr_* kf_* tkfc_* ff_* ffr_* *.pyc *.pyo *.dat testcpp
-122
test/mk_test.py
··· 1 - #!/usr/bin/env python 2 - # Copyright (c) 2003-2010, Mark Borgerding. All rights reserved. 3 - # This file is part of KISS FFT - https://github.com/mborgerding/kissfft 4 - # 5 - # SPDX-License-Identifier: BSD-3-Clause 6 - # See COPYING file for more information. 7 - 8 - import FFT 9 - import sys 10 - import random 11 - import re 12 - j=complex(0,1) 13 - 14 - def randvec(n,iscomplex): 15 - if iscomplex: 16 - return [ 17 - int(random.uniform(-32768,32767) ) + j*int(random.uniform(-32768,32767) ) 18 - for i in range(n) ] 19 - else: 20 - return [ int(random.uniform(-32768,32767) ) for i in range(n) ] 21 - 22 - def c_format(v,round=0): 23 - if round: 24 - return ','.join( [ '{%d,%d}' %(int(c.real),int(c.imag) ) for c in v ] ) 25 - else: 26 - s= ','.join( [ '{%.60f ,%.60f }' %(c.real,c.imag) for c in v ] ) 27 - return re.sub(r'\.?0+ ',' ',s) 28 - 29 - def test_cpx( n,inverse ,short): 30 - v = randvec(n,1) 31 - scale = 1 32 - if short: 33 - minsnr=30 34 - else: 35 - minsnr=100 36 - 37 - if inverse: 38 - tvecout = FFT.inverse_fft(v) 39 - if short: 40 - scale = 1 41 - else: 42 - scale = len(v) 43 - else: 44 - tvecout = FFT.fft(v) 45 - if short: 46 - scale = 1.0/len(v) 47 - 48 - tvecout = [ c * scale for c in tvecout ] 49 - 50 - 51 - s="""#define NFFT %d""" % len(v) + """ 52 - { 53 - double snr; 54 - kiss_fft_cpx test_vec_in[NFFT] = { """ + c_format(v) + """}; 55 - kiss_fft_cpx test_vec_out[NFFT] = {""" + c_format( tvecout ) + """}; 56 - kiss_fft_cpx testbuf[NFFT]; 57 - void * cfg = kiss_fft_alloc(NFFT,%d,0,0);""" % inverse + """ 58 - 59 - kiss_fft(cfg,test_vec_in,testbuf); 60 - snr = snr_compare(test_vec_out,testbuf,NFFT); 61 - printf("DATATYPE=" xstr(kiss_fft_scalar) ", FFT n=%d, inverse=%d, snr = %g dB\\n",NFFT,""" + str(inverse) + """,snr); 62 - if (snr<""" + str(minsnr) + """) 63 - exit_code++; 64 - free(cfg); 65 - } 66 - #undef NFFT 67 - """ 68 - return s 69 - 70 - def compare_func(): 71 - s=""" 72 - #define xstr(s) str(s) 73 - #define str(s) #s 74 - double snr_compare( kiss_fft_cpx * test_vec_out,kiss_fft_cpx * testbuf, int n) 75 - { 76 - int k; 77 - double sigpow,noisepow,err,snr,scale=0; 78 - kiss_fft_cpx err; 79 - sigpow = noisepow = .000000000000000000000000000001; 80 - 81 - for (k=0;k<n;++k) { 82 - sigpow += test_vec_out[k].r * test_vec_out[k].r + 83 - test_vec_out[k].i * test_vec_out[k].i; 84 - C_SUB(err,test_vec_out[k],testbuf[k].r); 85 - noisepow += err.r * err.r + err.i + err.i; 86 - 87 - if (test_vec_out[k].r) 88 - scale += testbuf[k].r / test_vec_out[k].r; 89 - } 90 - snr = 10*log10( sigpow / noisepow ); 91 - scale /= n; 92 - if (snr<10) 93 - printf( "\\npoor snr, try a scaling factor %f\\n" , scale ); 94 - return snr; 95 - } 96 - """ 97 - return s 98 - 99 - def main(): 100 - 101 - from getopt import getopt 102 - opts,args = getopt(sys.argv[1:],'s') 103 - opts = dict(opts) 104 - short = int( opts.has_key('-s') ) 105 - 106 - fftsizes = args 107 - if not fftsizes: 108 - fftsizes = [ 1800 ] 109 - print '#include "kiss_fft.h"' 110 - print compare_func() 111 - print "int main() { int exit_code=0;\n" 112 - for n in fftsizes: 113 - n = int(n) 114 - print test_cpx(n,0,short) 115 - print test_cpx(n,1,short) 116 - print """ 117 - return exit_code; 118 - } 119 - """ 120 - 121 - if __name__ == "__main__": 122 - main()