📄 multest
字号:
#!/bin/sh## multest## Run multiply and square timing tests, to compute a chart for the# current processor and compiler combination.### The contents of this file are subject to the Mozilla Public## License Version 1.1 (the "License"); you may not use this file## except in compliance with the License. You may obtain a copy of## the License at http://www.mozilla.org/MPL/#### Software distributed under the License is distributed on an "AS## IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or## implied. See the License for the specific language governing## rights and limitations under the License.#### The Original Code is the MPI Arbitrary Precision Integer Arithmetic## library.#### The Initial Developer of the Original Code is ## Michael J. Fromberger <sting@linguist.dartmouth.edu>#### Portions created by Michael J. Fromberger are ## Copyright (C) 2000 Michael J. Fromberger. All Rights Reserved#### Contributor(s):#### Alternatively, the contents of this file may be used under the## terms of the GNU General Public License Version 2 or later (the## "GPL"), in which case the provisions of the GPL are applicable## instead of those above. If you wish to allow use of your## version of this file only under the terms of the GPL and not to## allow others to use your version of this file under the MPL,## indicate your decision by deleting the provisions above and## replace them with the notice and other provisions required by## the GPL. If you do not delete the provisions above, a recipient## may use your version of this file under either the MPL or the GPL.## # $Id: multest,v 1.2 2000/08/22 01:15:41 nelsonb%netscape.com Exp $#ECHO=/bin/echoMAKE=gmake$ECHO "\n** Running multiply and square timing tests\n"$ECHO "Bringing 'mulsqr' up to date ... "if $MAKE mulsqr ; then :else $ECHO "\nMake failed to build mulsqr.\n" exit 1fiif [ ! -x ./mulsqr ] ; then $ECHO "\nCannot find 'mulsqr' program, testing cannot continue.\n" exit 1fisizes='64 128 192 256 320 384 448 512 640 768 896 1024 1536 2048'ntests=500000$ECHO "Running timing tests, please wait ... "trap 'echo "oop!";rm -f tt*.tmp;exit 0' INT HUPtouch tt$$.tmp$ECHO $ntests tests >> tt$$.tmpfor size in $sizes ; do $ECHO "$size bits ... \c" set -A res `./mulsqr $ntests $size|head -3|tr -d '%'|awk '{print $2}'` $ECHO $size"\t"${res[0]}"\t"${res[1]}"\t"${res[2]} >> tt$$.tmp $ECHO "(done)"donemv tt$$.tmp mulsqr-results.txtrm -f tt$$.tmp$ECHO "\n** Running Karatsuba-Ofman multiplication tests\n"$ECHO "Brining 'karatsuba' up to date ... "if $MAKE karatsuba ; then :else $ECHO "\nMake failed to build karatsuba.\n" exit 1fiif [ ! -x ./karatsuba ] ; then $ECHO "\nCannot find 'karatsuba' program, testing cannot continue.\n" exit 1fintests=100000trap 'echo "oop!";rm -f tt*.tmp;exit 0' INT HUPtouch tt$$.tmpfor size in $sizes ; do $ECHO "$size bits ... " ./karatsuba $ntests $size >> tt$$.tmp tail -2 tt$$.tmpdonemv tt$$.tmp karatsuba-results.txtrm -f tt$$.tmpexit 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -