diff options
Diffstat (limited to 'gnuradio-core/src/examples')
31 files changed, 0 insertions, 3004 deletions
diff --git a/gnuradio-core/src/examples/CMakeLists.txt b/gnuradio-core/src/examples/CMakeLists.txt deleted file mode 100644 index b90a5542df..0000000000 --- a/gnuradio-core/src/examples/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2011 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. - -add_subdirectory(mp-sched) -add_subdirectory(network) -add_subdirectory(volk_benchmark) diff --git a/gnuradio-core/src/examples/mp-sched/CMakeLists.txt b/gnuradio-core/src/examples/mp-sched/CMakeLists.txt deleted file mode 100644 index d2d910ecf2..0000000000 --- a/gnuradio-core/src/examples/mp-sched/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2011 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. - -include(GrPython) - -GR_PYTHON_INSTALL(PROGRAMS - affinity_set.py - plot_flops.py - run_synthetic.py - synthetic.py - wfm_rcv_pll_to_wav.py - DESTINATION ${GR_PKG_DATA_DIR}/examples/mp-sched - COMPONENT "core_python" -) - -install( - FILES README - DESTINATION ${GR_PKG_DATA_DIR}/examples/mp-sched - COMPONENT "core_python" -) diff --git a/gnuradio-core/src/examples/mp-sched/README b/gnuradio-core/src/examples/mp-sched/README deleted file mode 100644 index ae575437ac..0000000000 --- a/gnuradio-core/src/examples/mp-sched/README +++ /dev/null @@ -1,2 +0,0 @@ -These are pieces of code used to test and benchmark the -multi-processor scheduler. diff --git a/gnuradio-core/src/examples/mp-sched/affinity_set.py b/gnuradio-core/src/examples/mp-sched/affinity_set.py deleted file mode 100755 index 4d28a04174..0000000000 --- a/gnuradio-core/src/examples/mp-sched/affinity_set.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env python -################################################## -# Gnuradio Python Flow Graph -# Title: Affinity Set Test -################################################## - -from gnuradio import eng_notation -from gnuradio import gr -from gnuradio import blocks -from gnuradio import filter -from gnuradio.eng_option import eng_option -from gnuradio.filter import firdes -from optparse import OptionParser -import sys - -class affinity_set(gr.top_block): - - def __init__(self): - gr.top_block.__init__(self, "Affinity Set Test") - - ################################################## - # Variables - ################################################## - self.samp_rate = samp_rate = 32000 - - ################################################## - # Blocks - ################################################## - vec_len = 1 - self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*vec_len, samp_rate) - self.blocks_null_source_0 = blocks.null_source(gr.sizeof_gr_complex*vec_len) - self.blocks_null_sink_0 = blocks.null_sink(gr.sizeof_gr_complex*vec_len) - self.filter_filt_0 = filter.fir_filter_ccc(1, 40000*[0.2+0.3j,]) - self.filter_filt_1 = filter.fir_filter_ccc(1, 40000*[0.2+0.3j,]) - - self.filter_filt_0.set_processor_affinity([0,]) - self.filter_filt_1.set_processor_affinity([0,1]) - - ################################################## - # Connections - ################################################## - self.connect((self.blocks_null_source_0, 0), (self.blocks_throttle_0, 0)) - self.connect((self.blocks_throttle_0, 0), (self.filter_filt_0, 0)) - self.connect((self.filter_filt_0, 0), (self.filter_filt_1, 0)) - self.connect((self.filter_filt_1, 0), (self.blocks_null_sink_0, 0)) - - def get_samp_rate(self): - return self.samp_rate - - def set_samp_rate(self, samp_rate): - self.samp_rate = samp_rate - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option, usage="%prog: [options]") - (options, args) = parser.parse_args() - tb = affinity_set() - tb.start() - - while(1): - ret = raw_input('Enter a new Core # or Press Enter to quit: ') - if(len(ret) == 0): - tb.stop() - sys.exit(0) - elif(ret.lower() == "none"): - tb.filter_filt_0.unset_processor_affinity() - else: - try: - n = int(ret) - except ValueError: - print "Invalid number" - else: - tb.filter_filt_0.set_processor_affinity([n,]) diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/core-duo.dat b/gnuradio-core/src/examples/mp-sched/perf-data/core-duo.dat deleted file mode 100644 index 064d1e1282..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/core-duo.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D Core Duo 1.83 GHz (T2400) - 1 1 5.273e+07 10.010 10.160 0.060 1.021 2.700000e+10 2.697e+09 - 1 2 5.273e+07 10.410 20.180 0.150 1.953 5.400000e+10 5.187e+09 - 1 3 3.516e+07 10.360 20.030 0.150 1.948 5.400000e+10 5.212e+09 - 1 4 2.637e+07 10.100 20.030 0.100 1.993 5.400000e+10 5.347e+09 - 1 5 2.109e+07 10.140 19.980 0.110 1.981 5.400000e+10 5.325e+09 - 1 6 1.758e+07 10.110 20.030 0.110 1.992 5.400000e+10 5.341e+09 - 1 7 1.507e+07 10.120 20.030 0.110 1.990 5.400000e+10 5.336e+09 - 1 8 1.318e+07 10.060 19.980 0.090 1.995 5.400000e+10 5.368e+09 - 2 1 5.273e+07 10.210 20.130 0.260 1.997 5.400000e+10 5.289e+09 - 2 2 2.637e+07 10.110 20.030 0.140 1.995 5.400000e+10 5.341e+09 - 2 3 1.758e+07 10.120 20.010 0.150 1.992 5.400000e+10 5.336e+09 - 2 4 1.318e+07 10.080 19.990 0.110 1.994 5.400000e+10 5.357e+09 - 2 5 1.055e+07 10.050 19.990 0.090 1.998 5.400000e+10 5.373e+09 - 2 6 8.789e+06 10.050 19.980 0.080 1.996 5.400000e+10 5.373e+09 - 2 7 7.533e+06 10.050 19.970 0.090 1.996 5.400000e+10 5.373e+09 - 2 8 6.592e+06 10.040 19.970 0.090 1.998 5.399999e+10 5.378e+09 - 3 1 3.516e+07 10.630 20.130 0.230 1.915 5.400000e+10 5.080e+09 - 3 2 1.758e+07 10.120 20.020 0.170 1.995 5.400000e+10 5.336e+09 - 3 3 1.172e+07 10.140 20.050 0.130 1.990 5.400000e+10 5.325e+09 - 3 4 8.789e+06 10.070 20.010 0.100 1.997 5.400000e+10 5.362e+09 - 3 5 7.031e+06 10.060 19.980 0.100 1.996 5.400000e+10 5.368e+09 - 3 6 5.859e+06 10.060 20.000 0.100 1.998 5.400000e+10 5.368e+09 - 3 7 5.022e+06 10.050 20.010 0.070 1.998 5.400000e+10 5.373e+09 - 3 8 4.395e+06 10.050 19.990 0.070 1.996 5.400000e+10 5.373e+09 - 4 1 2.637e+07 10.180 20.080 0.240 1.996 5.400000e+10 5.305e+09 - 4 2 1.318e+07 10.140 20.000 0.180 1.990 5.400000e+10 5.325e+09 - 4 3 8.789e+06 10.110 20.020 0.120 1.992 5.400000e+10 5.341e+09 - 4 4 6.592e+06 10.080 20.020 0.090 1.995 5.399999e+10 5.357e+09 - 4 5 5.273e+06 10.050 19.990 0.090 1.998 5.399999e+10 5.373e+09 - 4 6 4.395e+06 10.080 20.010 0.080 1.993 5.400000e+10 5.357e+09 - 4 7 3.767e+06 10.070 20.000 0.080 1.994 5.400000e+10 5.362e+09 - 4 8 3.296e+06 10.050 20.000 0.080 1.998 5.399999e+10 5.373e+09 - 5 1 2.109e+07 11.240 20.080 0.260 1.810 5.400000e+10 4.804e+09 - 5 2 1.055e+07 10.130 19.990 0.150 1.988 5.400000e+10 5.331e+09 - 5 3 7.031e+06 10.100 20.020 0.120 1.994 5.400000e+10 5.347e+09 - 5 4 5.273e+06 10.070 20.000 0.090 1.995 5.399999e+10 5.362e+09 - 5 5 4.219e+06 10.100 20.040 0.090 1.993 5.400000e+10 5.347e+09 - 5 6 3.516e+06 10.080 20.000 0.090 1.993 5.400000e+10 5.357e+09 - 5 7 3.013e+06 10.070 20.000 0.100 1.996 5.399998e+10 5.362e+09 - 5 8 2.637e+06 10.070 20.000 0.090 1.995 5.399998e+10 5.362e+09 - 6 1 1.758e+07 10.220 20.100 0.290 1.995 5.400000e+10 5.284e+09 - 6 2 8.789e+06 10.080 20.010 0.130 1.998 5.400000e+10 5.357e+09 - 6 3 5.859e+06 10.090 20.030 0.120 1.997 5.400000e+10 5.352e+09 - 6 4 4.395e+06 10.100 20.030 0.080 1.991 5.400000e+10 5.347e+09 - 6 5 3.516e+06 10.060 20.020 0.080 1.998 5.400000e+10 5.368e+09 - 6 6 2.930e+06 10.070 20.030 0.090 1.998 5.399999e+10 5.362e+09 - 6 7 2.511e+06 10.070 20.030 0.080 1.997 5.399998e+10 5.362e+09 - 6 8 2.197e+06 10.070 20.010 0.090 1.996 5.399998e+10 5.362e+09 - 7 1 1.507e+07 10.420 20.030 0.260 1.947 5.400000e+10 5.182e+09 - 7 2 7.533e+06 10.100 20.010 0.140 1.995 5.400000e+10 5.347e+09 - 7 3 5.022e+06 10.080 20.020 0.120 1.998 5.400000e+10 5.357e+09 - 7 4 3.767e+06 10.080 20.010 0.100 1.995 5.400000e+10 5.357e+09 - 7 5 3.013e+06 10.070 20.030 0.080 1.997 5.399998e+10 5.362e+09 - 7 6 2.511e+06 10.080 20.010 0.090 1.994 5.399998e+10 5.357e+09 - 7 7 2.152e+06 10.080 20.060 0.070 1.997 5.399999e+10 5.357e+09 - 7 8 1.883e+06 10.070 20.040 0.070 1.997 5.399998e+10 5.362e+09 - 8 1 1.318e+07 10.220 20.080 0.270 1.991 5.400000e+10 5.284e+09 - 8 2 6.592e+06 10.100 20.010 0.140 1.995 5.399999e+10 5.347e+09 - 8 3 4.395e+06 10.110 20.020 0.120 1.992 5.400000e+10 5.341e+09 - 8 4 3.296e+06 10.090 20.040 0.090 1.995 5.399999e+10 5.352e+09 - 8 5 2.637e+06 10.090 20.040 0.090 1.995 5.399998e+10 5.352e+09 - 8 6 2.197e+06 10.070 20.040 0.100 2.000 5.399998e+10 5.362e+09 - 8 7 1.883e+06 10.090 20.050 0.080 1.995 5.399998e+10 5.352e+09 - 8 8 1.648e+06 10.090 20.040 0.090 1.995 5.399999e+10 5.352e+09 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/core2-duo.dat b/gnuradio-core/src/examples/mp-sched/perf-data/core2-duo.dat deleted file mode 100644 index d67dee8e51..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/core2-duo.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D Core2 Duo 2.66 GHz (6700) - 1 1 1.406e+08 9.890 10.100 0.230 1.044 7.200000e+10 7.280e+09 - 1 2 1.406e+08 10.400 19.900 0.290 1.941 1.440000e+11 1.385e+10 - 1 3 9.375e+07 11.410 19.950 0.200 1.766 1.440000e+11 1.262e+10 - 1 4 7.031e+07 10.230 19.800 0.230 1.958 1.440000e+11 1.408e+10 - 1 5 5.625e+07 10.640 19.800 0.180 1.878 1.440000e+11 1.353e+10 - 1 6 4.688e+07 10.000 19.780 0.130 1.991 1.440000e+11 1.440e+10 - 1 7 4.018e+07 10.500 19.690 0.180 1.892 1.440000e+11 1.371e+10 - 1 8 3.516e+07 10.020 19.750 0.170 1.988 1.440000e+11 1.437e+10 - 2 1 1.406e+08 10.330 20.000 0.460 1.981 1.440000e+11 1.394e+10 - 2 2 7.031e+07 10.160 19.870 0.270 1.982 1.440000e+11 1.417e+10 - 2 3 4.688e+07 10.210 19.780 0.230 1.960 1.440000e+11 1.410e+10 - 2 4 3.516e+07 10.050 19.730 0.210 1.984 1.440000e+11 1.433e+10 - 2 5 2.812e+07 10.060 19.760 0.170 1.981 1.440000e+11 1.431e+10 - 2 6 2.344e+07 10.030 19.780 0.180 1.990 1.440000e+11 1.436e+10 - 2 7 2.009e+07 10.040 19.820 0.180 1.992 1.440000e+11 1.434e+10 - 2 8 1.758e+07 10.050 19.820 0.180 1.990 1.440000e+11 1.433e+10 - 3 1 9.375e+07 13.140 19.950 0.450 1.553 1.440000e+11 1.096e+10 - 3 2 4.688e+07 10.570 19.840 0.290 1.904 1.440000e+11 1.362e+10 - 3 3 3.125e+07 10.420 19.730 0.280 1.920 1.440000e+11 1.382e+10 - 3 4 2.344e+07 10.120 19.710 0.240 1.971 1.440000e+11 1.423e+10 - 3 5 1.875e+07 10.140 19.750 0.190 1.966 1.440000e+11 1.420e+10 - 3 6 1.562e+07 10.030 19.730 0.190 1.986 1.440000e+11 1.436e+10 - 3 7 1.339e+07 10.020 19.720 0.200 1.988 1.440000e+11 1.437e+10 - 3 8 1.172e+07 9.990 19.720 0.170 1.991 1.440000e+11 1.441e+10 - 4 1 7.031e+07 10.310 19.980 0.460 1.983 1.440000e+11 1.397e+10 - 4 2 3.516e+07 10.300 19.830 0.320 1.956 1.440000e+11 1.398e+10 - 4 3 2.344e+07 10.180 19.780 0.230 1.966 1.440000e+11 1.415e+10 - 4 4 1.758e+07 10.070 19.750 0.220 1.983 1.440000e+11 1.430e+10 - 4 5 1.406e+07 10.090 19.750 0.190 1.976 1.440000e+11 1.427e+10 - 4 6 1.172e+07 10.020 19.720 0.190 1.987 1.440000e+11 1.437e+10 - 4 7 1.004e+07 10.040 19.780 0.190 1.989 1.440000e+11 1.434e+10 - 4 8 8.789e+06 10.000 19.750 0.160 1.991 1.440000e+11 1.440e+10 - 5 1 5.625e+07 11.580 19.930 0.500 1.764 1.440000e+11 1.244e+10 - 5 2 2.812e+07 10.300 19.830 0.320 1.956 1.440000e+11 1.398e+10 - 5 3 1.875e+07 10.240 19.760 0.240 1.953 1.440000e+11 1.406e+10 - 5 4 1.406e+07 10.140 19.880 0.230 1.983 1.440000e+11 1.420e+10 - 5 5 1.125e+07 10.040 19.730 0.200 1.985 1.440000e+11 1.434e+10 - 5 6 9.375e+06 10.030 19.770 0.200 1.991 1.440000e+11 1.436e+10 - 5 7 8.036e+06 10.030 19.780 0.170 1.989 1.440000e+11 1.436e+10 - 5 8 7.031e+06 10.000 19.750 0.180 1.993 1.440000e+11 1.440e+10 - 6 1 4.688e+07 10.340 19.910 0.560 1.980 1.440000e+11 1.393e+10 - 6 2 2.344e+07 10.290 19.770 0.330 1.953 1.440000e+11 1.399e+10 - 6 3 1.562e+07 10.150 19.770 0.270 1.974 1.440000e+11 1.419e+10 - 6 4 1.172e+07 10.170 19.880 0.240 1.978 1.440000e+11 1.416e+10 - 6 5 9.375e+06 10.080 19.780 0.240 1.986 1.440000e+11 1.429e+10 - 6 6 7.812e+06 10.020 19.740 0.220 1.992 1.440000e+11 1.437e+10 - 6 7 6.696e+06 10.050 19.760 0.200 1.986 1.440000e+11 1.433e+10 - 6 8 5.859e+06 10.070 19.750 0.210 1.982 1.440000e+11 1.430e+10 - 7 1 4.018e+07 11.220 19.880 0.530 1.819 1.440000e+11 1.283e+10 - 7 2 2.009e+07 10.280 19.790 0.340 1.958 1.440000e+11 1.401e+10 - 7 3 1.339e+07 10.190 19.760 0.250 1.964 1.440000e+11 1.413e+10 - 7 4 1.004e+07 10.060 19.750 0.240 1.987 1.440000e+11 1.431e+10 - 7 5 8.036e+06 10.070 19.750 0.240 1.985 1.440000e+11 1.430e+10 - 7 6 6.696e+06 10.040 19.810 0.220 1.995 1.440000e+11 1.434e+10 - 7 7 5.740e+06 10.050 19.780 0.210 1.989 1.440000e+11 1.433e+10 - 7 8 5.022e+06 10.010 19.790 0.190 1.996 1.440000e+11 1.439e+10 - 8 1 3.516e+07 10.320 19.900 0.470 1.974 1.440000e+11 1.395e+10 - 8 2 1.758e+07 10.340 19.900 0.320 1.956 1.440000e+11 1.393e+10 - 8 3 1.172e+07 10.130 19.770 0.290 1.980 1.440000e+11 1.422e+10 - 8 4 8.789e+06 10.120 19.780 0.230 1.977 1.440000e+11 1.423e+10 - 8 5 7.031e+06 10.040 19.790 0.200 1.991 1.440000e+11 1.434e+10 - 8 6 5.859e+06 10.050 19.770 0.220 1.989 1.440000e+11 1.433e+10 - 8 7 5.022e+06 10.030 19.800 0.200 1.994 1.440000e+11 1.436e+10 - 8 8 4.395e+06 10.050 19.800 0.210 1.991 1.440000e+11 1.433e+10 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-2.33-clovertown.dat b/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-2.33-clovertown.dat deleted file mode 100644 index fa182c69a7..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-2.33-clovertown.dat +++ /dev/null @@ -1,257 +0,0 @@ -#D Dual quad-core Xeon 2.33GHz (Clovertown E5345) - 1 1 1.367e+08 10.980 12.080 0.360 1.133 7.000000e+10 6.375e+09 - 1 2 1.367e+08 12.250 24.310 0.400 2.017 1.400000e+11 1.143e+10 - 1 3 1.367e+08 12.830 36.080 0.580 2.857 2.100000e+11 1.637e+10 - 1 4 1.367e+08 12.600 46.820 0.770 3.777 2.800000e+11 2.222e+10 - 1 5 1.367e+08 12.620 58.850 0.720 4.720 3.500000e+11 2.773e+10 - 1 6 1.367e+08 12.310 69.430 0.860 5.710 4.200000e+11 3.412e+10 - 1 7 1.367e+08 12.720 80.580 0.950 6.410 4.900000e+11 3.852e+10 - 1 8 1.367e+08 12.440 91.530 1.010 7.439 5.600000e+11 4.502e+10 - 1 9 1.367e+08 22.310 102.660 1.080 4.650 6.300000e+11 2.824e+10 - 1 10 1.367e+08 22.610 113.670 1.160 5.079 7.000000e+11 3.096e+10 - 1 11 1.367e+08 22.690 124.730 1.030 5.543 7.700000e+11 3.394e+10 - 1 12 1.367e+08 23.260 136.520 1.030 5.914 8.400000e+11 3.611e+10 - 1 13 1.367e+08 23.330 147.270 1.130 6.361 9.100000e+11 3.901e+10 - 1 14 1.367e+08 24.110 158.070 1.010 6.598 9.800000e+11 4.065e+10 - 1 15 1.367e+08 25.380 168.370 1.080 6.677 1.050000e+12 4.137e+10 - 1 16 1.367e+08 26.660 179.130 1.250 6.766 1.120000e+12 4.201e+10 - 2 1 1.367e+08 11.190 23.330 0.420 2.122 1.400000e+11 1.251e+10 - 2 2 1.367e+08 12.650 46.350 0.940 3.738 2.800000e+11 2.213e+10 - 2 3 1.367e+08 12.510 69.010 0.980 5.595 4.200000e+11 3.357e+10 - 2 4 1.367e+08 13.250 89.330 0.890 6.809 5.600000e+11 4.226e+10 - 2 5 1.367e+08 22.540 113.580 1.150 5.090 7.000000e+11 3.106e+10 - 2 6 1.367e+08 22.940 135.790 1.260 5.974 8.400000e+11 3.662e+10 - 2 7 1.367e+08 24.250 158.360 1.520 6.593 9.800000e+11 4.041e+10 - 2 8 1.367e+08 26.610 179.840 1.490 6.814 1.120000e+12 4.209e+10 - 2 9 1.215e+08 26.860 179.400 1.540 6.736 1.120000e+12 4.170e+10 - 2 10 1.094e+08 26.350 178.740 1.430 6.838 1.120000e+12 4.250e+10 - 2 11 9.943e+07 25.790 177.910 1.350 6.951 1.120000e+12 4.343e+10 - 2 12 9.115e+07 25.200 176.980 1.460 7.081 1.120000e+12 4.444e+10 - 2 13 8.413e+07 24.840 177.320 1.260 7.189 1.120000e+12 4.509e+10 - 2 14 7.812e+07 24.450 176.920 1.130 7.282 1.120000e+12 4.581e+10 - 2 15 7.292e+07 24.280 177.400 1.140 7.353 1.120000e+12 4.613e+10 - 2 16 6.836e+07 23.830 176.290 1.100 7.444 1.120000e+12 4.700e+10 - 3 1 1.367e+08 11.360 34.790 0.930 3.144 2.100000e+11 1.849e+10 - 3 2 1.367e+08 12.560 68.800 1.400 5.589 4.200000e+11 3.344e+10 - 3 3 1.367e+08 22.310 103.250 1.310 4.687 6.300000e+11 2.824e+10 - 3 4 1.367e+08 22.940 136.120 1.500 5.999 8.400000e+11 3.662e+10 - 3 5 1.367e+08 25.240 168.550 1.790 6.749 1.050000e+12 4.160e+10 - 3 6 1.215e+08 26.800 178.710 1.610 6.728 1.120000e+12 4.179e+10 - 3 7 1.042e+08 26.090 178.710 1.490 6.907 1.120000e+12 4.293e+10 - 3 8 9.115e+07 25.420 178.140 1.360 7.061 1.120000e+12 4.406e+10 - 3 9 8.102e+07 24.680 177.260 1.410 7.239 1.120000e+12 4.538e+10 - 3 10 7.292e+07 24.270 176.830 1.390 7.343 1.120000e+12 4.615e+10 - 3 11 6.629e+07 23.890 177.060 1.240 7.463 1.120000e+12 4.688e+10 - 3 12 6.076e+07 23.620 176.290 1.300 7.519 1.120000e+12 4.742e+10 - 3 13 5.609e+07 23.340 176.780 1.230 7.627 1.120000e+12 4.799e+10 - 3 14 5.208e+07 23.140 176.330 1.300 7.676 1.120000e+12 4.840e+10 - 3 15 4.861e+07 23.100 176.940 1.080 7.706 1.120000e+12 4.848e+10 - 3 16 4.557e+07 22.850 176.120 1.060 7.754 1.120000e+12 4.902e+10 - 4 1 1.367e+08 11.440 45.520 1.080 4.073 2.800000e+11 2.448e+10 - 4 2 1.367e+08 12.410 90.020 1.440 7.370 5.600000e+11 4.512e+10 - 4 3 1.367e+08 23.060 135.570 1.600 5.948 8.400000e+11 3.643e+10 - 4 4 1.367e+08 26.720 179.780 1.880 6.799 1.120000e+12 4.192e+10 - 4 5 1.094e+08 26.280 178.110 1.890 6.849 1.120000e+12 4.262e+10 - 4 6 9.115e+07 25.250 177.280 1.700 7.088 1.120000e+12 4.436e+10 - 4 7 7.812e+07 24.880 177.830 1.570 7.211 1.120000e+12 4.502e+10 - 4 8 6.836e+07 24.150 177.240 1.350 7.395 1.120000e+12 4.638e+10 - 4 9 6.076e+07 23.730 176.590 1.370 7.499 1.120000e+12 4.720e+10 - 4 10 5.469e+07 23.380 176.570 1.310 7.608 1.120000e+12 4.790e+10 - 4 11 4.972e+07 23.230 176.400 1.290 7.649 1.120000e+12 4.821e+10 - 4 12 4.557e+07 22.950 176.100 1.250 7.728 1.120000e+12 4.880e+10 - 4 13 4.207e+07 22.980 176.430 1.260 7.732 1.120000e+12 4.874e+10 - 4 14 3.906e+07 22.820 176.300 1.350 7.785 1.120000e+12 4.908e+10 - 4 15 3.646e+07 22.750 176.450 1.220 7.810 1.120000e+12 4.923e+10 - 4 16 3.418e+07 22.620 176.350 1.080 7.844 1.120000e+12 4.951e+10 - 5 1 1.367e+08 12.000 56.890 1.600 4.874 3.500000e+11 2.917e+10 - 5 2 1.367e+08 22.390 112.870 1.920 5.127 7.000000e+11 3.126e+10 - 5 3 1.367e+08 25.170 167.880 2.110 6.754 1.050000e+12 4.172e+10 - 5 4 1.094e+08 26.380 178.010 1.900 6.820 1.120000e+12 4.246e+10 - 5 5 8.750e+07 25.190 177.570 1.660 7.115 1.120000e+12 4.446e+10 - 5 6 7.292e+07 24.400 176.750 1.650 7.311 1.120000e+12 4.590e+10 - 5 7 6.250e+07 24.020 177.580 1.570 7.458 1.120000e+12 4.663e+10 - 5 8 5.469e+07 23.470 176.650 1.350 7.584 1.120000e+12 4.772e+10 - 5 9 4.861e+07 23.200 176.350 1.280 7.656 1.120000e+12 4.828e+10 - 5 10 4.375e+07 23.140 176.230 1.410 7.677 1.120000e+12 4.840e+10 - 5 11 3.977e+07 22.930 176.120 1.320 7.738 1.120000e+12 4.884e+10 - 5 12 3.646e+07 22.740 176.060 1.330 7.801 1.120000e+12 4.925e+10 - 5 13 3.365e+07 22.690 176.450 1.210 7.830 1.120000e+12 4.936e+10 - 5 14 3.125e+07 22.690 176.430 1.230 7.830 1.120000e+12 4.936e+10 - 5 15 2.917e+07 22.690 176.410 1.260 7.830 1.120000e+12 4.936e+10 - 5 16 2.734e+07 22.560 176.150 1.110 7.857 1.120000e+12 4.965e+10 - 6 1 1.367e+08 12.600 68.590 2.230 5.621 4.200000e+11 3.333e+10 - 6 2 1.367e+08 22.830 135.260 2.100 6.017 8.400000e+11 3.679e+10 - 6 3 1.215e+08 26.860 178.470 2.140 6.724 1.120000e+12 4.170e+10 - 6 4 9.115e+07 25.450 177.110 2.060 7.040 1.120000e+12 4.401e+10 - 6 5 7.292e+07 24.510 176.850 1.910 7.293 1.120000e+12 4.570e+10 - 6 6 6.076e+07 23.890 176.450 1.760 7.460 1.120000e+12 4.688e+10 - 6 7 5.208e+07 23.460 175.980 1.540 7.567 1.120000e+12 4.774e+10 - 6 8 4.557e+07 23.150 176.480 1.370 7.683 1.120000e+12 4.838e+10 - 6 9 4.051e+07 22.920 176.030 1.400 7.741 1.120000e+12 4.887e+10 - 6 10 3.646e+07 22.880 176.300 1.350 7.764 1.120000e+12 4.895e+10 - 6 11 3.314e+07 22.830 175.970 1.360 7.767 1.120000e+12 4.906e+10 - 6 12 3.038e+07 22.710 176.040 1.190 7.804 1.120000e+12 4.932e+10 - 6 13 2.804e+07 22.690 176.050 1.340 7.818 1.120000e+12 4.936e+10 - 6 14 2.604e+07 22.650 176.410 1.140 7.839 1.120000e+12 4.945e+10 - 6 15 2.431e+07 22.570 175.940 1.250 7.851 1.120000e+12 4.962e+10 - 6 16 2.279e+07 22.500 175.980 1.170 7.873 1.120000e+12 4.978e+10 - 7 1 1.367e+08 12.960 79.970 2.850 6.390 4.900000e+11 3.781e+10 - 7 2 1.367e+08 24.040 156.540 2.500 6.616 9.800000e+11 4.077e+10 - 7 3 1.042e+08 26.130 178.060 2.210 6.899 1.120000e+12 4.286e+10 - 7 4 7.812e+07 24.860 176.880 1.810 7.188 1.120000e+12 4.505e+10 - 7 5 6.250e+07 24.000 176.590 1.790 7.433 1.120000e+12 4.667e+10 - 7 6 5.208e+07 23.540 176.480 1.670 7.568 1.120000e+12 4.758e+10 - 7 7 4.464e+07 23.180 176.030 1.510 7.659 1.120000e+12 4.832e+10 - 7 8 3.906e+07 22.980 176.500 1.340 7.739 1.120000e+12 4.874e+10 - 7 9 3.472e+07 22.870 175.970 1.280 7.750 1.120000e+12 4.897e+10 - 7 10 3.125e+07 22.730 176.220 1.300 7.810 1.120000e+12 4.927e+10 - 7 11 2.841e+07 22.700 176.030 1.300 7.812 1.120000e+12 4.934e+10 - 7 12 2.604e+07 22.650 176.300 1.210 7.837 1.120000e+12 4.945e+10 - 7 13 2.404e+07 22.580 176.140 1.170 7.853 1.120000e+12 4.960e+10 - 7 14 2.232e+07 22.540 176.550 1.130 7.883 1.120000e+12 4.969e+10 - 7 15 2.083e+07 22.570 175.870 1.260 7.848 1.120000e+12 4.962e+10 - 7 16 1.953e+07 22.520 175.980 1.310 7.873 1.120000e+12 4.973e+10 - 8 1 1.367e+08 13.250 91.770 3.010 7.153 5.600000e+11 4.226e+10 - 8 2 1.367e+08 26.280 178.100 2.980 6.890 1.120000e+12 4.262e+10 - 8 3 9.115e+07 25.510 177.140 2.270 7.033 1.120000e+12 4.390e+10 - 8 4 6.836e+07 24.330 176.850 1.870 7.346 1.120000e+12 4.603e+10 - 8 5 5.469e+07 23.680 176.850 1.690 7.540 1.120000e+12 4.730e+10 - 8 6 4.557e+07 23.430 176.210 1.700 7.593 1.120000e+12 4.780e+10 - 8 7 3.906e+07 23.100 176.680 1.440 7.711 1.120000e+12 4.848e+10 - 8 8 3.418e+07 22.890 176.270 1.430 7.763 1.120000e+12 4.893e+10 - 8 9 3.038e+07 22.760 175.980 1.320 7.790 1.120000e+12 4.921e+10 - 8 10 2.734e+07 22.760 176.340 1.290 7.804 1.120000e+12 4.921e+10 - 8 11 2.486e+07 22.660 176.220 1.170 7.828 1.120000e+12 4.943e+10 - 8 12 2.279e+07 22.660 176.050 1.280 7.826 1.120000e+12 4.943e+10 - 8 13 2.103e+07 22.590 176.170 1.350 7.858 1.120000e+12 4.958e+10 - 8 14 1.953e+07 22.550 176.120 1.320 7.869 1.120000e+12 4.967e+10 - 8 15 1.823e+07 22.590 176.130 1.270 7.853 1.120000e+12 4.958e+10 - 8 16 1.709e+07 22.500 176.090 1.230 7.881 1.120000e+12 4.978e+10 - 9 1 1.367e+08 21.110 101.410 2.640 4.929 6.300000e+11 2.984e+10 - 9 2 1.215e+08 27.400 178.180 2.720 6.602 1.120000e+12 4.088e+10 - 9 3 8.102e+07 25.140 177.370 2.230 7.144 1.120000e+12 4.455e+10 - 9 4 6.076e+07 24.110 176.810 1.910 7.413 1.120000e+12 4.645e+10 - 9 5 4.861e+07 23.460 176.240 1.600 7.581 1.120000e+12 4.774e+10 - 9 6 4.051e+07 23.200 176.310 1.620 7.669 1.120000e+12 4.828e+10 - 9 7 3.472e+07 22.970 176.560 1.540 7.754 1.120000e+12 4.876e+10 - 9 8 3.038e+07 22.920 176.300 1.440 7.755 1.120000e+12 4.887e+10 - 9 9 2.701e+07 22.830 176.090 1.370 7.773 1.120000e+12 4.906e+10 - 9 10 2.431e+07 22.730 175.960 1.430 7.804 1.120000e+12 4.927e+10 - 9 11 2.210e+07 22.750 176.160 1.260 7.799 1.120000e+12 4.923e+10 - 9 12 2.025e+07 22.660 176.100 1.380 7.832 1.120000e+12 4.943e+10 - 9 13 1.870e+07 22.700 176.040 1.400 7.817 1.120000e+12 4.934e+10 - 9 14 1.736e+07 22.620 175.940 1.410 7.840 1.120000e+12 4.951e+10 - 9 15 1.620e+07 22.490 175.910 1.340 7.881 1.120000e+12 4.980e+10 - 9 16 1.519e+07 22.540 175.990 1.330 7.867 1.120000e+12 4.969e+10 - 10 1 1.367e+08 21.730 113.690 2.870 5.364 7.000000e+11 3.221e+10 - 10 2 1.094e+08 26.660 177.920 3.180 6.793 1.120000e+12 4.201e+10 - 10 3 7.292e+07 24.740 176.810 2.090 7.231 1.120000e+12 4.527e+10 - 10 4 5.469e+07 23.880 176.280 2.020 7.466 1.120000e+12 4.690e+10 - 10 5 4.375e+07 23.330 176.510 1.610 7.635 1.120000e+12 4.801e+10 - 10 6 3.646e+07 23.170 176.160 1.680 7.675 1.120000e+12 4.834e+10 - 10 7 3.125e+07 22.950 176.490 1.470 7.754 1.120000e+12 4.880e+10 - 10 8 2.734e+07 22.830 176.260 1.360 7.780 1.120000e+12 4.906e+10 - 10 9 2.431e+07 22.770 175.930 1.410 7.788 1.120000e+12 4.919e+10 - 10 10 2.188e+07 22.680 175.870 1.440 7.818 1.120000e+12 4.938e+10 - 10 11 1.989e+07 22.700 176.140 1.310 7.817 1.120000e+12 4.934e+10 - 10 12 1.823e+07 22.630 176.040 1.430 7.842 1.120000e+12 4.949e+10 - 10 13 1.683e+07 22.640 176.000 1.320 7.832 1.120000e+12 4.947e+10 - 10 14 1.562e+07 22.610 176.160 1.230 7.846 1.120000e+12 4.954e+10 - 10 15 1.458e+07 22.570 176.010 1.290 7.856 1.120000e+12 4.962e+10 - 10 16 1.367e+07 22.640 176.060 1.270 7.833 1.120000e+12 4.947e+10 - 11 1 1.367e+08 22.060 124.440 3.050 5.779 7.700000e+11 3.490e+10 - 11 2 9.943e+07 26.060 178.400 3.000 6.961 1.120000e+12 4.298e+10 - 11 3 6.629e+07 24.380 176.690 2.200 7.338 1.120000e+12 4.594e+10 - 11 4 4.972e+07 23.650 176.730 1.830 7.550 1.120000e+12 4.736e+10 - 11 5 3.977e+07 23.310 176.030 1.780 7.628 1.120000e+12 4.805e+10 - 11 6 3.314e+07 23.050 176.210 1.680 7.718 1.120000e+12 4.859e+10 - 11 7 2.841e+07 22.940 176.300 1.540 7.752 1.120000e+12 4.882e+10 - 11 8 2.486e+07 22.830 175.990 1.530 7.776 1.120000e+12 4.906e+10 - 11 9 2.210e+07 22.760 176.060 1.440 7.799 1.120000e+12 4.921e+10 - 11 10 1.989e+07 22.630 176.010 1.430 7.841 1.120000e+12 4.949e+10 - 11 11 1.808e+07 22.720 176.040 1.390 7.809 1.120000e+12 4.930e+10 - 11 12 1.657e+07 22.640 175.890 1.400 7.831 1.120000e+12 4.947e+10 - 11 13 1.530e+07 22.570 176.090 1.260 7.858 1.120000e+12 4.962e+10 - 11 14 1.420e+07 22.610 176.150 1.450 7.855 1.120000e+12 4.954e+10 - 11 15 1.326e+07 22.550 175.980 1.310 7.862 1.120000e+12 4.967e+10 - 11 16 1.243e+07 22.610 175.920 1.400 7.843 1.120000e+12 4.954e+10 - 12 1 1.367e+08 22.220 136.260 3.390 6.285 8.400000e+11 3.780e+10 - 12 2 9.115e+07 25.610 178.090 2.800 7.063 1.120000e+12 4.373e+10 - 12 3 6.076e+07 24.180 176.320 2.230 7.384 1.120000e+12 4.632e+10 - 12 4 4.557e+07 23.570 176.570 2.010 7.577 1.120000e+12 4.752e+10 - 12 5 3.646e+07 23.210 176.420 1.710 7.675 1.120000e+12 4.826e+10 - 12 6 3.038e+07 23.040 175.910 1.640 7.706 1.120000e+12 4.861e+10 - 12 7 2.604e+07 22.980 176.390 1.510 7.742 1.120000e+12 4.874e+10 - 12 8 2.279e+07 22.840 176.110 1.640 7.782 1.120000e+12 4.904e+10 - 12 9 2.025e+07 22.760 175.950 1.500 7.797 1.120000e+12 4.921e+10 - 12 10 1.823e+07 22.660 175.810 1.600 7.829 1.120000e+12 4.943e+10 - 12 11 1.657e+07 22.710 175.940 1.410 7.809 1.120000e+12 4.932e+10 - 12 12 1.519e+07 22.650 175.870 1.400 7.826 1.120000e+12 4.945e+10 - 12 13 1.402e+07 22.640 176.040 1.260 7.831 1.120000e+12 4.947e+10 - 12 14 1.302e+07 22.650 176.130 1.450 7.840 1.120000e+12 4.945e+10 - 12 15 1.215e+07 22.580 175.990 1.370 7.855 1.120000e+12 4.960e+10 - 12 16 1.139e+07 22.640 175.870 1.440 7.832 1.120000e+12 4.947e+10 - 13 1 1.367e+08 22.640 147.020 3.570 6.652 9.100000e+11 4.019e+10 - 13 2 8.413e+07 25.600 177.820 2.870 7.058 1.120000e+12 4.375e+10 - 13 3 5.609e+07 24.020 176.980 2.270 7.463 1.120000e+12 4.663e+10 - 13 4 4.207e+07 23.440 176.430 2.030 7.613 1.120000e+12 4.778e+10 - 13 5 3.365e+07 23.080 176.110 1.790 7.708 1.120000e+12 4.853e+10 - 13 6 2.804e+07 22.870 176.210 1.600 7.775 1.120000e+12 4.897e+10 - 13 7 2.404e+07 22.940 176.340 1.580 7.756 1.120000e+12 4.882e+10 - 13 8 2.103e+07 22.880 176.050 1.520 7.761 1.120000e+12 4.895e+10 - 13 9 1.870e+07 22.740 176.020 1.400 7.802 1.120000e+12 4.925e+10 - 13 10 1.683e+07 22.710 175.880 1.440 7.808 1.120000e+12 4.932e+10 - 13 11 1.530e+07 22.590 176.040 1.350 7.853 1.120000e+12 4.958e+10 - 13 12 1.402e+07 22.600 175.930 1.380 7.846 1.120000e+12 4.956e+10 - 13 13 1.294e+07 22.710 176.010 1.340 7.809 1.120000e+12 4.932e+10 - 13 14 1.202e+07 22.690 176.270 1.350 7.828 1.120000e+12 4.936e+10 - 13 15 1.122e+07 22.590 175.960 1.290 7.846 1.120000e+12 4.958e+10 - 13 16 1.052e+07 22.610 175.960 1.370 7.843 1.120000e+12 4.954e+10 - 14 1 1.367e+08 23.120 157.180 3.810 6.963 9.800000e+11 4.239e+10 - 14 2 7.812e+07 25.310 177.210 3.020 7.121 1.120000e+12 4.425e+10 - 14 3 5.208e+07 24.130 177.110 2.340 7.437 1.120000e+12 4.642e+10 - 14 4 3.906e+07 23.390 176.660 1.800 7.630 1.120000e+12 4.788e+10 - 14 5 3.125e+07 23.060 176.420 1.750 7.726 1.120000e+12 4.857e+10 - 14 6 2.604e+07 22.890 176.180 1.530 7.764 1.120000e+12 4.893e+10 - 14 7 2.232e+07 22.940 176.060 1.550 7.742 1.120000e+12 4.882e+10 - 14 8 1.953e+07 22.810 176.110 1.500 7.786 1.120000e+12 4.910e+10 - 14 9 1.736e+07 22.750 176.370 1.370 7.813 1.120000e+12 4.923e+10 - 14 10 1.562e+07 22.720 176.020 1.450 7.811 1.120000e+12 4.930e+10 - 14 11 1.420e+07 22.680 176.090 1.310 7.822 1.120000e+12 4.938e+10 - 14 12 1.302e+07 22.710 175.950 1.510 7.814 1.120000e+12 4.932e+10 - 14 13 1.202e+07 22.700 176.100 1.500 7.824 1.120000e+12 4.934e+10 - 14 14 1.116e+07 22.660 176.150 1.460 7.838 1.120000e+12 4.943e+10 - 14 15 1.042e+07 22.680 176.120 1.370 7.826 1.120000e+12 4.938e+10 - 14 16 9.766e+06 22.710 176.110 1.430 7.818 1.120000e+12 4.932e+10 - 15 1 1.367e+08 23.710 168.080 4.140 7.264 1.050000e+12 4.429e+10 - 15 2 7.292e+07 25.170 176.640 2.930 7.134 1.120000e+12 4.450e+10 - 15 3 4.861e+07 23.820 176.980 2.110 7.518 1.120000e+12 4.702e+10 - 15 4 3.646e+07 23.250 176.190 1.970 7.663 1.120000e+12 4.817e+10 - 15 5 2.917e+07 23.050 176.450 1.690 7.728 1.120000e+12 4.859e+10 - 15 6 2.431e+07 22.900 175.980 1.680 7.758 1.120000e+12 4.891e+10 - 15 7 2.083e+07 22.830 176.090 1.640 7.785 1.120000e+12 4.906e+10 - 15 8 1.823e+07 22.850 176.160 1.530 7.776 1.120000e+12 4.902e+10 - 15 9 1.620e+07 22.780 176.390 1.360 7.803 1.120000e+12 4.917e+10 - 15 10 1.458e+07 22.660 176.000 1.440 7.831 1.120000e+12 4.943e+10 - 15 11 1.326e+07 22.660 176.110 1.430 7.835 1.120000e+12 4.943e+10 - 15 12 1.215e+07 22.660 176.150 1.380 7.835 1.120000e+12 4.943e+10 - 15 13 1.122e+07 22.760 175.970 1.580 7.801 1.120000e+12 4.921e+10 - 15 14 1.042e+07 22.670 176.290 1.270 7.832 1.120000e+12 4.940e+10 - 15 15 9.722e+06 22.710 176.060 1.550 7.821 1.120000e+12 4.932e+10 - 15 16 9.115e+06 22.800 176.020 1.490 7.786 1.120000e+12 4.912e+10 - 16 1 1.367e+08 25.470 179.270 4.730 7.224 1.120000e+12 4.397e+10 - 16 2 6.836e+07 24.870 176.820 2.960 7.229 1.120000e+12 4.503e+10 - 16 3 4.557e+07 23.810 176.930 2.250 7.525 1.120000e+12 4.704e+10 - 16 4 3.418e+07 23.240 176.650 1.950 7.685 1.120000e+12 4.819e+10 - 16 5 2.734e+07 23.090 175.940 1.940 7.704 1.120000e+12 4.851e+10 - 16 6 2.279e+07 22.900 176.120 1.680 7.764 1.120000e+12 4.891e+10 - 16 7 1.953e+07 22.890 176.290 1.440 7.765 1.120000e+12 4.893e+10 - 16 8 1.709e+07 22.820 176.040 1.610 7.785 1.120000e+12 4.908e+10 - 16 9 1.519e+07 22.890 175.990 1.470 7.753 1.120000e+12 4.893e+10 - 16 10 1.367e+07 22.700 175.890 1.470 7.813 1.120000e+12 4.934e+10 - 16 11 1.243e+07 22.770 175.960 1.520 7.794 1.120000e+12 4.919e+10 - 16 12 1.139e+07 22.730 176.000 1.430 7.806 1.120000e+12 4.927e+10 - 16 13 1.052e+07 22.670 175.990 1.540 7.831 1.120000e+12 4.940e+10 - 16 14 9.766e+06 22.720 176.130 1.440 7.816 1.120000e+12 4.930e+10 - 16 15 9.115e+06 22.740 176.320 1.360 7.814 1.120000e+12 4.925e+10 - 16 16 8.545e+06 22.680 176.170 1.320 7.826 1.120000e+12 4.938e+10 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-3.00-penryn.dat b/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-3.00-penryn.dat deleted file mode 100644 index 57d49ed334..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/dual-quad-core-3.00-penryn.dat +++ /dev/null @@ -1,257 +0,0 @@ -#D Dual quad-core Xeon 3.0 GHz (Penryn E5472, 1600 MHz FSB, 5400 chipset) - 1 1 5.000e+07 2.720 3.020 0.110 1.151 2.560000e+10 9.412e+09 - 1 2 5.000e+07 2.870 5.630 0.170 2.021 5.120000e+10 1.784e+10 - 1 3 5.000e+07 2.880 8.380 0.160 2.965 7.680000e+10 2.667e+10 - 1 4 5.000e+07 2.990 11.080 0.200 3.773 1.024000e+11 3.425e+10 - 1 5 5.000e+07 2.950 13.950 0.190 4.793 1.280000e+11 4.339e+10 - 1 6 5.000e+07 3.020 16.620 0.240 5.583 1.536000e+11 5.086e+10 - 1 7 5.000e+07 2.930 19.250 0.200 6.638 1.792000e+11 6.116e+10 - 1 8 5.000e+07 3.170 22.240 0.290 7.107 2.048000e+11 6.461e+10 - 1 9 5.000e+07 5.450 24.410 0.310 4.536 2.304000e+11 4.228e+10 - 1 10 5.000e+07 5.610 27.400 0.370 4.950 2.560000e+11 4.563e+10 - 1 11 5.000e+07 5.680 29.960 0.370 5.340 2.816000e+11 4.958e+10 - 1 12 5.000e+07 5.440 32.490 0.350 6.037 3.072000e+11 5.647e+10 - 1 13 5.000e+07 5.630 35.270 0.400 6.336 3.328000e+11 5.911e+10 - 1 14 5.000e+07 6.270 38.500 0.480 6.217 3.584000e+11 5.716e+10 - 1 15 5.000e+07 6.080 40.880 0.490 6.804 3.840000e+11 6.316e+10 - 1 16 5.000e+07 7.740 43.390 0.600 5.683 4.096000e+11 5.292e+10 - 2 1 5.000e+07 2.820 5.700 0.210 2.096 5.120000e+10 1.816e+10 - 2 2 5.000e+07 2.820 11.130 0.230 4.028 1.024000e+11 3.631e+10 - 2 3 5.000e+07 2.960 16.570 0.320 5.706 1.536000e+11 5.189e+10 - 2 4 5.000e+07 3.110 21.920 0.390 7.174 2.048000e+11 6.585e+10 - 2 5 5.000e+07 5.650 27.550 0.520 4.968 2.560000e+11 4.531e+10 - 2 6 5.000e+07 5.880 32.890 0.440 5.668 3.072000e+11 5.224e+10 - 2 7 5.000e+07 6.750 38.210 0.560 5.744 3.584000e+11 5.310e+10 - 2 8 5.000e+07 6.360 43.480 0.580 6.928 4.096000e+11 6.440e+10 - 2 9 5.000e+07 8.270 48.750 0.730 5.983 4.608000e+11 5.572e+10 - 2 10 5.000e+07 8.210 54.400 0.610 6.700 5.120000e+11 6.236e+10 - 2 11 5.000e+07 8.750 59.760 0.640 6.903 5.632000e+11 6.437e+10 - 2 12 5.000e+07 9.300 65.050 0.700 7.070 6.144000e+11 6.606e+10 - 2 13 5.000e+07 9.990 70.750 0.750 7.157 6.656000e+11 6.663e+10 - 2 14 5.000e+07 10.610 75.950 0.810 7.235 7.168000e+11 6.756e+10 - 2 15 5.000e+07 11.900 80.400 0.870 6.829 7.680000e+11 6.454e+10 - 2 16 5.000e+07 11.820 86.790 0.900 7.419 8.192000e+11 6.931e+10 - 3 1 5.000e+07 2.970 8.300 0.380 2.923 7.680000e+10 2.586e+10 - 3 2 5.000e+07 2.980 16.660 0.390 5.721 1.536000e+11 5.154e+10 - 3 3 5.000e+07 5.480 24.690 0.420 4.582 2.304000e+11 4.204e+10 - 3 4 5.000e+07 5.620 32.820 0.560 5.940 3.072000e+11 5.466e+10 - 3 5 5.000e+07 6.940 40.800 0.620 5.968 3.840000e+11 5.533e+10 - 3 6 5.000e+07 7.860 49.010 0.710 6.326 4.608000e+11 5.863e+10 - 3 7 5.000e+07 8.470 57.130 0.750 6.834 5.376000e+11 6.347e+10 - 3 8 5.000e+07 9.420 65.310 0.820 7.020 6.144000e+11 6.522e+10 - 3 9 5.000e+07 10.350 73.640 0.940 7.206 6.912000e+11 6.678e+10 - 3 10 5.000e+07 11.460 82.230 1.030 7.265 7.680000e+11 6.702e+10 - 3 11 5.000e+07 12.200 89.590 1.050 7.430 8.448000e+11 6.925e+10 - 3 12 5.000e+07 13.040 97.520 1.140 7.566 9.216000e+11 7.067e+10 - 3 13 5.000e+07 14.000 105.560 1.150 7.622 9.984000e+11 7.131e+10 - 3 14 5.000e+07 14.930 113.630 1.210 7.692 1.075200e+12 7.202e+10 - 3 15 5.000e+07 15.920 121.610 1.350 7.724 1.152000e+12 7.236e+10 - 3 16 5.000e+07 16.870 129.770 1.390 7.775 1.228800e+12 7.284e+10 - 4 1 5.000e+07 2.900 11.100 0.340 3.945 1.024000e+11 3.531e+10 - 4 2 5.000e+07 4.380 21.980 0.480 5.128 2.048000e+11 4.676e+10 - 4 3 5.000e+07 5.720 32.800 0.610 5.841 3.072000e+11 5.371e+10 - 4 4 5.000e+07 6.820 43.880 0.700 6.537 4.096000e+11 6.006e+10 - 4 5 5.000e+07 8.150 54.420 0.760 6.771 5.120000e+11 6.282e+10 - 4 6 5.000e+07 9.510 65.180 0.980 6.957 6.144000e+11 6.461e+10 - 4 7 5.000e+07 10.650 76.080 1.020 7.239 7.168000e+11 6.731e+10 - 4 8 5.000e+07 11.880 86.720 1.110 7.393 8.192000e+11 6.896e+10 - 4 9 5.000e+07 13.150 97.920 1.250 7.541 9.216000e+11 7.008e+10 - 4 10 5.000e+07 14.640 109.260 1.410 7.559 1.024000e+12 6.995e+10 - 4 11 5.000e+07 15.710 119.170 1.440 7.677 1.126400e+12 7.170e+10 - 4 12 5.000e+07 16.950 129.960 1.420 7.751 1.228800e+12 7.250e+10 - 4 13 5.000e+07 18.260 140.520 1.620 7.784 1.331200e+12 7.290e+10 - 4 14 5.000e+07 19.610 151.290 1.780 7.806 1.433600e+12 7.311e+10 - 4 15 5.000e+07 21.060 162.760 1.890 7.818 1.536000e+12 7.293e+10 - 4 16 5.000e+07 22.280 172.870 1.980 7.848 1.638400e+12 7.354e+10 - 5 1 5.000e+07 3.040 13.810 0.390 4.671 1.280000e+11 4.211e+10 - 5 2 5.000e+07 5.590 27.510 0.610 5.030 2.560000e+11 4.580e+10 - 5 3 5.000e+07 6.550 40.970 0.780 6.374 3.840000e+11 5.863e+10 - 5 4 5.000e+07 8.520 54.470 0.940 6.504 5.120000e+11 6.009e+10 - 5 5 5.000e+07 9.920 67.950 1.060 6.957 6.400000e+11 6.452e+10 - 5 6 5.000e+07 11.350 81.490 1.180 7.284 7.680000e+11 6.767e+10 - 5 7 5.000e+07 12.910 94.960 1.300 7.456 8.960000e+11 6.940e+10 - 5 8 5.000e+07 14.520 108.510 1.400 7.570 1.024000e+12 7.052e+10 - 5 9 5.000e+07 16.070 122.120 1.620 7.700 1.152000e+12 7.169e+10 - 5 10 5.000e+07 17.950 136.140 1.730 7.681 1.280000e+12 7.131e+10 - 5 11 5.000e+07 19.470 148.330 1.830 7.712 1.408000e+12 7.232e+10 - 5 12 5.000e+07 20.980 162.100 2.030 7.823 1.536000e+12 7.321e+10 - 5 13 5.000e+07 22.670 175.470 2.160 7.835 1.664000e+12 7.340e+10 - 5 14 5.000e+07 24.440 189.630 2.170 7.848 1.792000e+12 7.332e+10 - 5 15 5.000e+07 26.100 203.010 2.450 7.872 1.920000e+12 7.356e+10 - 5 16 5.000e+07 27.720 216.000 2.550 7.884 2.048000e+12 7.388e+10 - 6 1 5.000e+07 2.950 16.560 0.540 5.797 1.536000e+11 5.207e+10 - 6 2 5.000e+07 5.540 32.900 0.720 6.069 3.072000e+11 5.545e+10 - 6 3 5.000e+07 8.490 48.860 1.000 5.873 4.608000e+11 5.428e+10 - 6 4 5.000e+07 10.000 64.670 1.100 6.577 6.144000e+11 6.144e+10 - 6 5 5.000e+07 11.440 81.430 1.310 7.233 7.680000e+11 6.713e+10 - 6 6 5.000e+07 13.250 97.690 1.360 7.475 9.216000e+11 6.955e+10 - 6 7 5.000e+07 15.270 113.730 1.610 7.553 1.075200e+12 7.041e+10 - 6 8 5.000e+07 17.180 129.780 1.820 7.660 1.228800e+12 7.153e+10 - 6 9 5.000e+07 19.200 146.020 1.870 7.703 1.382400e+12 7.200e+10 - 6 10 5.000e+07 21.220 162.290 2.100 7.747 1.536000e+12 7.238e+10 - 6 11 5.000e+07 23.070 178.420 2.160 7.827 1.689600e+12 7.324e+10 - 6 12 5.000e+07 25.120 194.590 2.450 7.844 1.843200e+12 7.338e+10 - 6 13 5.000e+07 27.110 210.640 2.660 7.868 1.996800e+12 7.366e+10 - 6 14 5.000e+07 29.110 226.820 2.750 7.886 2.150400e+12 7.387e+10 - 6 15 5.000e+07 31.130 242.800 2.940 7.894 2.304000e+12 7.401e+10 - 6 16 5.000e+07 33.100 258.790 3.210 7.915 2.457600e+12 7.425e+10 - 7 1 5.000e+07 2.940 19.140 0.590 6.711 1.792000e+11 6.095e+10 - 7 2 5.000e+07 5.920 37.910 1.030 6.578 3.584000e+11 6.054e+10 - 7 3 5.000e+07 8.570 57.010 1.150 6.786 5.376000e+11 6.273e+10 - 7 4 5.000e+07 10.840 76.060 1.320 7.138 7.168000e+11 6.613e+10 - 7 5 5.000e+07 13.070 94.920 1.540 7.380 8.960000e+11 6.855e+10 - 7 6 5.000e+07 15.270 113.790 1.730 7.565 1.075200e+12 7.041e+10 - 7 7 5.000e+07 17.700 132.560 1.960 7.600 1.254400e+12 7.087e+10 - 7 8 5.000e+07 19.930 151.500 2.130 7.708 1.433600e+12 7.193e+10 - 7 9 5.000e+07 22.250 170.570 2.340 7.771 1.612800e+12 7.249e+10 - 7 10 5.000e+07 24.600 189.280 2.450 7.794 1.792000e+12 7.285e+10 - 7 11 5.000e+07 26.950 208.030 2.700 7.819 1.971200e+12 7.314e+10 - 7 12 5.000e+07 29.280 227.070 2.850 7.852 2.150400e+12 7.344e+10 - 7 13 5.000e+07 31.570 245.750 3.040 7.881 2.329600e+12 7.379e+10 - 7 14 5.000e+07 33.930 264.960 3.160 7.902 2.508800e+12 7.394e+10 - 7 15 5.000e+07 36.310 283.960 3.440 7.915 2.688000e+12 7.403e+10 - 7 16 5.000e+07 38.560 302.120 3.630 7.929 2.867200e+12 7.436e+10 - 8 1 5.000e+07 3.200 21.880 0.860 7.106 2.048000e+11 6.400e+10 - 8 2 5.000e+07 5.890 43.450 0.930 7.535 4.096000e+11 6.954e+10 - 8 3 5.000e+07 9.520 65.180 1.250 6.978 6.144000e+11 6.454e+10 - 8 4 5.000e+07 12.200 86.780 1.480 7.234 8.192000e+11 6.715e+10 - 8 5 5.000e+07 14.760 108.420 1.670 7.459 1.024000e+12 6.938e+10 - 8 6 5.000e+07 17.300 129.850 1.960 7.619 1.228800e+12 7.103e+10 - 8 7 5.000e+07 20.020 151.430 2.190 7.673 1.433600e+12 7.161e+10 - 8 8 5.000e+07 22.750 173.550 2.420 7.735 1.638400e+12 7.202e+10 - 8 9 5.000e+07 25.410 194.560 2.760 7.765 1.843200e+12 7.254e+10 - 8 10 5.000e+07 28.410 217.250 2.920 7.750 2.048000e+12 7.209e+10 - 8 11 5.000e+07 30.720 237.990 3.210 7.852 2.252800e+12 7.333e+10 - 8 12 5.000e+07 33.310 259.340 3.280 7.884 2.457600e+12 7.378e+10 - 8 13 5.000e+07 36.000 280.760 3.670 7.901 2.662400e+12 7.396e+10 - 8 14 5.000e+07 38.800 302.570 3.740 7.895 2.867200e+12 7.390e+10 - 8 15 5.000e+07 41.530 324.520 4.060 7.912 3.072000e+12 7.397e+10 - 8 16 5.000e+07 44.060 345.420 4.250 7.936 3.276800e+12 7.437e+10 - 9 1 5.000e+07 5.460 24.660 1.000 4.700 2.304000e+11 4.220e+10 - 9 2 5.000e+07 8.460 49.010 1.200 5.935 4.608000e+11 5.447e+10 - 9 3 5.000e+07 10.810 71.410 1.400 6.735 6.912000e+11 6.394e+10 - 9 4 5.000e+07 13.470 97.570 1.710 7.370 9.216000e+11 6.842e+10 - 9 5 5.000e+07 16.490 121.780 2.130 7.514 1.152000e+12 6.986e+10 - 9 6 5.000e+07 19.540 146.070 2.280 7.592 1.382400e+12 7.075e+10 - 9 7 5.000e+07 22.660 170.830 2.570 7.652 1.612800e+12 7.117e+10 - 9 8 5.000e+07 25.520 194.720 2.760 7.738 1.843200e+12 7.223e+10 - 9 9 5.000e+07 28.400 219.020 3.060 7.820 2.073600e+12 7.301e+10 - 9 10 5.000e+07 31.490 243.030 3.320 7.823 2.304000e+12 7.317e+10 - 9 11 5.000e+07 34.530 267.230 3.420 7.838 2.534400e+12 7.340e+10 - 9 12 5.000e+07 37.520 291.720 3.860 7.878 2.764800e+12 7.369e+10 - 9 13 5.000e+07 40.550 315.780 4.170 7.890 2.995200e+12 7.386e+10 - 9 14 5.000e+07 43.470 339.930 4.290 7.919 3.225600e+12 7.420e+10 - 9 15 5.000e+07 46.820 364.970 4.640 7.894 3.456000e+12 7.381e+10 - 9 16 5.000e+07 49.660 388.630 4.890 7.924 3.686400e+12 7.423e+10 - 10 1 5.000e+07 5.500 27.290 0.980 5.140 2.560000e+11 4.655e+10 - 10 2 5.000e+07 8.480 54.830 1.420 6.633 5.120000e+11 6.038e+10 - 10 3 5.000e+07 11.540 81.580 1.630 7.211 7.680000e+11 6.655e+10 - 10 4 5.000e+07 14.950 108.480 1.860 7.381 1.024000e+12 6.849e+10 - 10 5 5.000e+07 18.330 135.300 2.280 7.506 1.280000e+12 6.983e+10 - 10 6 5.000e+07 21.680 162.380 2.540 7.607 1.536000e+12 7.085e+10 - 10 7 5.000e+07 24.950 189.360 2.730 7.699 1.792000e+12 7.182e+10 - 10 8 5.000e+07 28.280 216.090 3.110 7.751 2.048000e+12 7.242e+10 - 10 9 5.000e+07 31.730 243.290 3.450 7.776 2.304000e+12 7.261e+10 - 10 10 5.000e+07 35.040 270.380 3.680 7.821 2.560000e+12 7.306e+10 - 10 11 5.000e+07 38.340 297.080 4.050 7.854 2.816000e+12 7.345e+10 - 10 12 5.000e+07 41.770 323.840 4.330 7.857 3.072000e+12 7.355e+10 - 10 13 5.000e+07 45.120 351.380 4.710 7.892 3.328000e+12 7.376e+10 - 10 14 5.000e+07 48.360 377.870 4.880 7.915 3.584000e+12 7.411e+10 - 10 15 5.000e+07 51.760 404.740 5.110 7.918 3.840000e+12 7.419e+10 - 10 16 5.000e+07 55.130 431.760 5.430 7.930 4.096000e+12 7.430e+10 - 11 1 5.000e+07 5.570 30.080 1.080 5.594 2.816000e+11 5.056e+10 - 11 2 5.000e+07 9.000 60.230 1.470 6.856 5.632000e+11 6.258e+10 - 11 3 5.000e+07 12.630 89.890 1.770 7.257 8.448000e+11 6.689e+10 - 11 4 5.000e+07 16.290 119.110 2.140 7.443 1.126400e+12 6.915e+10 - 11 5 5.000e+07 19.940 148.730 2.440 7.581 1.408000e+12 7.061e+10 - 11 6 5.000e+07 23.800 178.620 2.790 7.622 1.689600e+12 7.099e+10 - 11 7 5.000e+07 27.480 208.510 3.160 7.703 1.971200e+12 7.173e+10 - 11 8 5.000e+07 31.140 237.820 3.490 7.749 2.252800e+12 7.234e+10 - 11 9 5.000e+07 34.770 267.390 3.800 7.800 2.534400e+12 7.289e+10 - 11 10 5.000e+07 38.510 297.250 4.240 7.829 2.816000e+12 7.312e+10 - 11 11 5.000e+07 42.080 326.570 4.610 7.870 3.097600e+12 7.361e+10 - 11 12 5.000e+07 45.860 356.540 4.590 7.875 3.379200e+12 7.369e+10 - 11 13 5.000e+07 49.570 386.250 5.150 7.896 3.660800e+12 7.385e+10 - 11 14 5.000e+07 53.220 415.630 5.360 7.910 3.942400e+12 7.408e+10 - 11 15 5.000e+07 57.000 445.200 5.870 7.914 4.224000e+12 7.411e+10 - 11 16 5.000e+07 60.800 474.810 6.250 7.912 4.505600e+12 7.411e+10 - 12 1 5.000e+07 5.600 32.770 1.240 6.073 3.072000e+11 5.486e+10 - 12 2 5.000e+07 10.220 65.660 1.600 6.581 6.144000e+11 6.012e+10 - 12 3 5.000e+07 13.680 97.900 2.000 7.303 9.216000e+11 6.737e+10 - 12 4 5.000e+07 17.790 129.710 2.330 7.422 1.228800e+12 6.907e+10 - 12 5 5.000e+07 21.770 162.420 2.700 7.585 1.536000e+12 7.056e+10 - 12 6 5.000e+07 25.770 194.770 3.090 7.678 1.843200e+12 7.153e+10 - 12 7 5.000e+07 29.940 227.290 3.390 7.705 2.150400e+12 7.182e+10 - 12 8 5.000e+07 34.030 259.370 3.860 7.735 2.457600e+12 7.222e+10 - 12 9 5.000e+07 38.070 291.890 4.310 7.780 2.764800e+12 7.262e+10 - 12 10 5.000e+07 42.080 324.370 4.660 7.819 3.072000e+12 7.300e+10 - 12 11 5.000e+07 45.950 356.370 5.000 7.864 3.379200e+12 7.354e+10 - 12 12 5.000e+07 49.960 388.790 5.250 7.887 3.686400e+12 7.379e+10 - 12 13 5.000e+07 54.010 422.050 5.420 7.915 3.993600e+12 7.394e+10 - 12 14 5.000e+07 58.010 453.330 6.120 7.920 4.300800e+12 7.414e+10 - 12 15 5.000e+07 62.080 485.830 6.310 7.928 4.608000e+12 7.423e+10 - 12 16 5.000e+07 66.200 518.060 6.780 7.928 4.915200e+12 7.425e+10 - 13 1 5.000e+07 5.630 35.420 1.300 6.522 3.328000e+11 5.911e+10 - 13 2 5.000e+07 10.730 71.050 1.830 6.792 6.656000e+11 6.203e+10 - 13 3 5.000e+07 14.690 105.710 2.160 7.343 9.984000e+11 6.796e+10 - 13 4 5.000e+07 19.120 140.630 2.510 7.486 1.331200e+12 6.962e+10 - 13 5 5.000e+07 23.600 175.730 3.000 7.573 1.664000e+12 7.051e+10 - 13 6 5.000e+07 27.910 211.000 3.350 7.680 1.996800e+12 7.154e+10 - 13 7 5.000e+07 32.370 246.320 3.860 7.729 2.329600e+12 7.197e+10 - 13 8 5.000e+07 36.790 281.150 4.260 7.758 2.662400e+12 7.237e+10 - 13 9 5.000e+07 41.080 316.080 4.520 7.804 2.995200e+12 7.291e+10 - 13 10 5.000e+07 45.600 352.020 5.090 7.831 3.328000e+12 7.298e+10 - 13 11 5.000e+07 49.760 386.130 5.470 7.870 3.660800e+12 7.357e+10 - 13 12 5.000e+07 54.080 421.160 5.780 7.895 3.993600e+12 7.385e+10 - 13 13 5.000e+07 58.520 455.980 6.170 7.897 4.326400e+12 7.393e+10 - 13 14 5.000e+07 63.000 491.340 6.710 7.906 4.659200e+12 7.396e+10 - 13 15 5.000e+07 67.250 525.920 6.920 7.923 4.992000e+12 7.423e+10 - 13 16 5.000e+07 72.090 560.640 7.160 7.876 5.324800e+12 7.386e+10 - 14 1 5.000e+07 5.670 38.290 1.330 6.988 3.584000e+11 6.321e+10 - 14 2 5.000e+07 10.850 75.880 1.940 7.172 7.168000e+11 6.606e+10 - 14 3 5.000e+07 15.840 114.160 2.400 7.359 1.075200e+12 6.788e+10 - 14 4 5.000e+07 20.610 151.540 2.710 7.484 1.433600e+12 6.956e+10 - 14 5 5.000e+07 25.330 189.160 3.320 7.599 1.792000e+12 7.075e+10 - 14 6 5.000e+07 30.160 227.510 3.670 7.665 2.150400e+12 7.130e+10 - 14 7 5.000e+07 34.730 265.020 3.960 7.745 2.508800e+12 7.224e+10 - 14 8 5.000e+07 39.530 302.550 4.640 7.771 2.867200e+12 7.253e+10 - 14 9 5.000e+07 44.220 340.330 5.180 7.813 3.225600e+12 7.294e+10 - 14 10 5.000e+07 48.800 378.180 5.430 7.861 3.584000e+12 7.344e+10 - 14 11 5.000e+07 53.550 415.790 5.800 7.873 3.942400e+12 7.362e+10 - 14 12 5.000e+07 58.250 453.340 6.430 7.893 4.300800e+12 7.383e+10 - 14 13 5.000e+07 63.150 492.200 6.960 7.904 4.659200e+12 7.378e+10 - 14 14 5.000e+07 67.850 528.470 6.970 7.892 5.017600e+12 7.395e+10 - 14 15 5.000e+07 72.510 566.950 7.720 7.925 5.376000e+12 7.414e+10 - 14 16 5.000e+07 77.230 604.250 8.170 7.930 5.734400e+12 7.425e+10 - 15 1 5.000e+07 5.800 41.070 1.460 7.333 3.840000e+11 6.621e+10 - 15 2 5.000e+07 11.900 80.380 2.190 6.939 7.680000e+11 6.454e+10 - 15 3 5.000e+07 16.990 121.790 2.610 7.322 1.152000e+12 6.780e+10 - 15 4 5.000e+07 22.040 162.330 3.030 7.503 1.536000e+12 6.969e+10 - 15 5 5.000e+07 27.120 202.750 3.460 7.604 1.920000e+12 7.080e+10 - 15 6 5.000e+07 32.290 243.420 3.870 7.658 2.304000e+12 7.135e+10 - 15 7 5.000e+07 37.450 284.300 4.410 7.709 2.688000e+12 7.178e+10 - 15 8 5.000e+07 42.560 323.740 4.890 7.722 3.072000e+12 7.218e+10 - 15 9 5.000e+07 47.440 364.880 5.330 7.804 3.456000e+12 7.285e+10 - 15 10 5.000e+07 52.440 405.400 5.750 7.840 3.840000e+12 7.323e+10 - 15 11 5.000e+07 57.270 445.500 6.070 7.885 4.224000e+12 7.376e+10 - 15 12 5.000e+07 62.450 485.920 6.770 7.889 4.608000e+12 7.379e+10 - 15 13 5.000e+07 67.680 527.540 7.440 7.905 4.992000e+12 7.376e+10 - 15 14 5.000e+07 72.740 566.990 7.790 7.902 5.376000e+12 7.391e+10 - 15 15 5.000e+07 77.760 607.620 8.060 7.918 5.760000e+12 7.407e+10 - 15 16 5.000e+07 82.750 647.630 8.640 7.931 6.144000e+12 7.425e+10 - 16 1 5.000e+07 6.310 43.540 1.790 7.184 4.096000e+11 6.491e+10 - 16 2 5.000e+07 12.340 87.310 2.190 7.253 8.192000e+11 6.639e+10 - 16 3 5.000e+07 17.930 130.440 2.830 7.433 1.228800e+12 6.853e+10 - 16 4 5.000e+07 23.530 173.540 3.140 7.509 1.638400e+12 6.963e+10 - 16 5 5.000e+07 28.910 216.290 3.710 7.610 2.048000e+12 7.084e+10 - 16 6 5.000e+07 34.310 259.400 4.260 7.685 2.457600e+12 7.163e+10 - 16 7 5.000e+07 39.790 302.740 4.620 7.725 2.867200e+12 7.206e+10 - 16 8 5.000e+07 44.970 346.250 5.340 7.818 3.276800e+12 7.287e+10 - 16 9 5.000e+07 50.470 388.870 5.910 7.822 3.686400e+12 7.304e+10 - 16 10 5.000e+07 55.890 432.480 6.140 7.848 4.096000e+12 7.329e+10 - 16 11 5.000e+07 61.250 475.380 6.770 7.872 4.505600e+12 7.356e+10 - 16 12 5.000e+07 66.670 518.940 7.160 7.891 4.915200e+12 7.372e+10 - 16 13 5.000e+07 72.160 562.230 7.890 7.901 5.324800e+12 7.379e+10 - 16 14 5.000e+07 77.600 604.950 8.230 7.902 5.734400e+12 7.390e+10 - 16 15 5.000e+07 82.970 648.420 8.690 7.920 6.144000e+12 7.405e+10 - 16 16 5.000e+07 88.370 690.730 9.460 7.923 6.553600e+12 7.416e+10 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/js21-altivec.dat b/gnuradio-core/src/examples/mp-sched/perf-data/js21-altivec.dat deleted file mode 100644 index d0b8148f0e..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/js21-altivec.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D JS21 4-core PPC970M 2.5 GHz (using Altivec) - 1 1 9.766e+07 9.820 10.210 0.360 1.076 5.000000e+10 5.092e+09 - 1 2 9.766e+07 10.620 19.890 0.640 1.933 1.000000e+11 9.416e+09 - 1 3 9.766e+07 10.310 29.590 0.610 2.929 1.500000e+11 1.455e+10 - 1 4 9.766e+07 10.440 39.290 0.680 3.829 2.000000e+11 1.916e+10 - 1 5 7.812e+07 15.730 39.150 0.590 2.526 2.000000e+11 1.271e+10 - 1 6 6.510e+07 13.100 39.080 0.590 3.028 2.000000e+11 1.527e+10 - 1 7 5.580e+07 11.550 39.030 0.500 3.423 2.000000e+11 1.732e+10 - 1 8 4.883e+07 10.410 39.010 0.510 3.796 2.000000e+11 1.921e+10 - 2 1 9.766e+07 10.080 20.070 0.700 2.061 1.000000e+11 9.921e+09 - 2 2 9.766e+07 11.360 39.650 0.960 3.575 2.000000e+11 1.761e+10 - 2 3 6.510e+07 13.120 39.270 0.740 3.050 2.000000e+11 1.524e+10 - 2 4 4.883e+07 10.410 39.110 0.650 3.819 2.000000e+11 1.921e+10 - 2 5 3.906e+07 11.030 39.080 0.610 3.598 2.000000e+11 1.813e+10 - 2 6 3.255e+07 10.640 39.020 0.560 3.720 2.000000e+11 1.880e+10 - 2 7 2.790e+07 10.510 38.980 0.550 3.761 2.000000e+11 1.903e+10 - 2 8 2.441e+07 10.440 38.970 0.570 3.787 2.000000e+11 1.916e+10 - 3 1 9.766e+07 12.130 29.970 0.920 2.547 1.500000e+11 1.237e+10 - 3 2 6.510e+07 13.100 39.300 0.920 3.070 2.000000e+11 1.527e+10 - 3 3 4.340e+07 11.400 39.200 0.760 3.505 2.000000e+11 1.754e+10 - 3 4 3.255e+07 10.730 39.100 0.690 3.708 2.000000e+11 1.864e+10 - 3 5 2.604e+07 10.470 39.010 0.620 3.785 2.000000e+11 1.910e+10 - 3 6 2.170e+07 10.380 39.010 0.620 3.818 2.000000e+11 1.927e+10 - 3 7 1.860e+07 10.280 39.120 0.580 3.862 2.000000e+11 1.946e+10 - 3 8 1.628e+07 10.230 39.000 0.600 3.871 2.000000e+11 1.955e+10 - 4 1 9.766e+07 10.700 39.990 1.540 3.881 2.000000e+11 1.869e+10 - 4 2 4.883e+07 10.530 39.260 0.940 3.818 2.000000e+11 1.899e+10 - 4 3 3.255e+07 10.840 39.140 0.760 3.681 2.000000e+11 1.845e+10 - 4 4 2.441e+07 10.530 39.040 0.680 3.772 2.000000e+11 1.899e+10 - 4 5 1.953e+07 10.380 39.030 0.650 3.823 2.000000e+11 1.927e+10 - 4 6 1.628e+07 10.310 39.020 0.650 3.848 2.000000e+11 1.940e+10 - 4 7 1.395e+07 10.160 38.980 0.620 3.898 2.000000e+11 1.969e+10 - 4 8 1.221e+07 10.150 38.990 0.580 3.899 2.000000e+11 1.970e+10 - 5 1 7.812e+07 14.750 39.780 1.470 2.797 2.000000e+11 1.356e+10 - 5 2 3.906e+07 11.350 39.240 0.950 3.541 2.000000e+11 1.762e+10 - 5 3 2.604e+07 10.720 39.120 0.800 3.724 2.000000e+11 1.866e+10 - 5 4 1.953e+07 10.440 39.060 0.730 3.811 2.000000e+11 1.916e+10 - 5 5 1.562e+07 10.410 39.060 0.690 3.818 2.000000e+11 1.921e+10 - 5 6 1.302e+07 10.260 38.970 0.650 3.862 2.000000e+11 1.949e+10 - 5 7 1.116e+07 10.270 39.020 0.650 3.863 2.000000e+11 1.947e+10 - 5 8 9.766e+06 10.130 39.010 0.660 3.916 2.000000e+11 1.974e+10 - 6 1 6.510e+07 12.850 39.730 1.450 3.205 2.000000e+11 1.556e+10 - 6 2 3.255e+07 10.700 39.300 0.990 3.765 2.000000e+11 1.869e+10 - 6 3 2.170e+07 10.770 39.110 0.810 3.707 2.000000e+11 1.857e+10 - 6 4 1.628e+07 10.570 39.090 0.750 3.769 2.000000e+11 1.892e+10 - 6 5 1.302e+07 10.310 39.040 0.690 3.854 2.000000e+11 1.940e+10 - 6 6 1.085e+07 10.260 39.030 0.700 3.872 2.000000e+11 1.949e+10 - 6 7 9.301e+06 10.170 39.020 0.680 3.904 2.000000e+11 1.967e+10 - 6 8 8.138e+06 10.150 39.020 0.670 3.910 2.000000e+11 1.970e+10 - 7 1 5.580e+07 11.440 39.730 1.500 3.604 2.000000e+11 1.748e+10 - 7 2 2.790e+07 10.950 39.260 0.990 3.676 2.000000e+11 1.826e+10 - 7 3 1.860e+07 10.620 39.140 0.860 3.766 2.000000e+11 1.883e+10 - 7 4 1.395e+07 10.420 39.070 0.750 3.821 2.000000e+11 1.919e+10 - 7 5 1.116e+07 10.290 39.040 0.710 3.863 2.000000e+11 1.944e+10 - 7 6 9.301e+06 10.200 39.040 0.720 3.898 2.000000e+11 1.961e+10 - 7 7 7.972e+06 10.210 39.020 0.670 3.887 2.000000e+11 1.959e+10 - 7 8 6.975e+06 10.160 39.020 0.650 3.905 2.000000e+11 1.969e+10 - 8 1 4.883e+07 10.870 39.950 1.520 3.815 2.000000e+11 1.840e+10 - 8 2 2.441e+07 10.690 39.270 1.000 3.767 2.000000e+11 1.871e+10 - 8 3 1.628e+07 10.540 39.130 0.860 3.794 2.000000e+11 1.898e+10 - 8 4 1.221e+07 10.410 39.110 0.790 3.833 2.000000e+11 1.921e+10 - 8 5 9.766e+06 10.230 39.040 0.710 3.886 2.000000e+11 1.955e+10 - 8 6 8.138e+06 10.260 39.050 0.700 3.874 2.000000e+11 1.949e+10 - 8 7 6.975e+06 10.220 39.100 0.690 3.893 2.000000e+11 1.957e+10 - 8 8 6.104e+06 10.170 39.020 0.650 3.901 2.000000e+11 1.967e+10 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/js21.dat b/gnuradio-core/src/examples/mp-sched/perf-data/js21.dat deleted file mode 100644 index a23bcebe77..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/js21.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D JS21 4-core PPC970MP 2.5 GHz - 1 1 5.273e+07 10.050 10.180 0.290 1.042 2.700000e+10 2.687e+09 - 1 2 5.273e+07 10.240 20.210 0.260 1.999 5.400000e+10 5.273e+09 - 1 3 5.273e+07 10.300 30.090 0.340 2.954 8.100000e+10 7.864e+09 - 1 4 5.273e+07 10.490 40.120 0.490 3.871 1.080000e+11 1.030e+10 - 1 5 4.219e+07 16.010 39.900 0.380 2.516 1.080000e+11 6.746e+09 - 1 6 3.516e+07 13.360 39.920 0.370 3.016 1.080000e+11 8.084e+09 - 1 7 3.013e+07 11.510 39.900 0.330 3.495 1.080000e+11 9.383e+09 - 1 8 2.637e+07 10.420 39.880 0.320 3.858 1.080000e+11 1.036e+10 - 2 1 5.273e+07 10.370 20.340 0.470 2.007 5.400000e+10 5.207e+09 - 2 2 5.273e+07 10.320 40.080 0.550 3.937 1.080000e+11 1.047e+10 - 2 3 3.516e+07 13.340 39.990 0.470 3.033 1.080000e+11 8.096e+09 - 2 4 2.637e+07 10.480 39.970 0.400 3.852 1.080000e+11 1.031e+10 - 2 5 2.109e+07 10.910 39.920 0.390 3.695 1.080000e+11 9.899e+09 - 2 6 1.758e+07 10.610 39.860 0.360 3.791 1.080000e+11 1.018e+10 - 2 7 1.507e+07 10.520 39.890 0.360 3.826 1.080000e+11 1.027e+10 - 2 8 1.318e+07 10.470 39.980 0.350 3.852 1.080000e+11 1.032e+10 - 3 1 5.273e+07 10.230 30.320 0.600 3.022 8.100000e+10 7.918e+09 - 3 2 3.516e+07 13.250 40.050 0.560 3.065 1.080000e+11 8.151e+09 - 3 3 2.344e+07 11.160 40.010 0.470 3.627 1.080000e+11 9.677e+09 - 3 4 1.758e+07 10.710 39.950 0.420 3.769 1.080000e+11 1.008e+10 - 3 5 1.406e+07 10.520 39.920 0.400 3.833 1.080000e+11 1.027e+10 - 3 6 1.172e+07 10.420 39.880 0.380 3.864 1.080000e+11 1.036e+10 - 3 7 1.004e+07 10.340 39.880 0.370 3.893 1.080000e+11 1.044e+10 - 3 8 8.789e+06 10.380 39.960 0.380 3.886 1.080000e+11 1.040e+10 - 4 1 5.273e+07 10.570 40.390 0.890 3.905 1.080000e+11 1.022e+10 - 4 2 2.637e+07 10.690 40.020 0.560 3.796 1.080000e+11 1.010e+10 - 4 3 1.758e+07 10.790 39.980 0.480 3.750 1.080000e+11 1.001e+10 - 4 4 1.318e+07 10.570 39.950 0.430 3.820 1.080000e+11 1.022e+10 - 4 5 1.055e+07 10.440 39.950 0.420 3.867 1.080000e+11 1.034e+10 - 4 6 8.789e+06 10.340 39.900 0.420 3.899 1.080000e+11 1.044e+10 - 4 7 7.533e+06 10.290 39.870 0.410 3.914 1.080000e+11 1.050e+10 - 4 8 6.592e+06 10.270 39.950 0.390 3.928 1.080000e+11 1.052e+10 - 5 1 4.219e+07 15.110 40.290 0.830 2.721 1.080000e+11 7.148e+09 - 5 2 2.109e+07 11.240 40.000 0.580 3.610 1.080000e+11 9.609e+09 - 5 3 1.406e+07 10.710 39.970 0.490 3.778 1.080000e+11 1.008e+10 - 5 4 1.055e+07 10.490 39.980 0.460 3.855 1.080000e+11 1.030e+10 - 5 5 8.438e+06 10.430 39.940 0.440 3.872 1.080000e+11 1.035e+10 - 5 6 7.031e+06 10.280 39.890 0.420 3.921 1.080000e+11 1.051e+10 - 5 7 6.027e+06 10.290 39.870 0.400 3.914 1.080000e+11 1.050e+10 - 5 8 5.273e+06 10.290 39.940 0.400 3.920 1.080000e+11 1.050e+10 - 6 1 3.516e+07 12.880 40.250 0.850 3.191 1.080000e+11 8.385e+09 - 6 2 1.758e+07 10.730 39.980 0.580 3.780 1.080000e+11 1.007e+10 - 6 3 1.172e+07 10.740 39.980 0.490 3.768 1.080000e+11 1.006e+10 - 6 4 8.789e+06 10.510 39.940 0.460 3.844 1.080000e+11 1.028e+10 - 6 5 7.031e+06 10.430 39.920 0.450 3.871 1.080000e+11 1.035e+10 - 6 6 5.859e+06 10.300 39.910 0.430 3.917 1.080000e+11 1.049e+10 - 6 7 5.022e+06 10.290 39.870 0.420 3.915 1.080000e+11 1.050e+10 - 6 8 4.395e+06 10.300 39.950 0.420 3.919 1.080000e+11 1.049e+10 - 7 1 3.013e+07 11.240 40.270 0.860 3.659 1.080000e+11 9.609e+09 - 7 2 1.507e+07 11.040 40.000 0.590 3.677 1.080000e+11 9.783e+09 - 7 3 1.004e+07 10.660 39.970 0.520 3.798 1.080000e+11 1.013e+10 - 7 4 7.533e+06 10.430 39.930 0.470 3.873 1.080000e+11 1.035e+10 - 7 5 6.027e+06 10.390 39.920 0.470 3.887 1.080000e+11 1.039e+10 - 7 6 5.022e+06 10.320 39.910 0.430 3.909 1.080000e+11 1.047e+10 - 7 7 4.305e+06 10.330 39.890 0.420 3.902 1.080000e+11 1.045e+10 - 7 8 3.767e+06 10.300 39.930 0.420 3.917 1.080000e+11 1.049e+10 - 8 1 2.637e+07 10.530 40.290 0.910 3.913 1.080000e+11 1.026e+10 - 8 2 1.318e+07 10.850 40.040 0.610 3.747 1.080000e+11 9.954e+09 - 8 3 8.789e+06 10.500 39.960 0.540 3.857 1.080000e+11 1.029e+10 - 8 4 6.592e+06 10.490 39.960 0.500 3.857 1.080000e+11 1.030e+10 - 8 5 5.273e+06 10.330 39.930 0.480 3.912 1.080000e+11 1.045e+10 - 8 6 4.395e+06 10.340 39.900 0.450 3.902 1.080000e+11 1.044e+10 - 8 7 3.767e+06 10.260 39.900 0.430 3.931 1.080000e+11 1.053e+10 - 8 8 3.296e+06 10.250 39.960 0.430 3.940 1.080000e+11 1.054e+10 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/ps3-altivec.dat b/gnuradio-core/src/examples/mp-sched/perf-data/ps3-altivec.dat deleted file mode 100644 index dd01b31bd7..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/ps3-altivec.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D Playstation 3 (using Altivec) - 1 1 3.906e+07 10.500 10.580 0.440 1.050 2.000000e+10 1.905e+09 - 1 2 1.953e+07 7.010 13.200 0.400 1.940 2.000000e+10 2.853e+09 - 1 3 1.302e+07 7.540 13.140 0.380 1.793 2.000000e+10 2.653e+09 - 1 4 9.766e+06 7.200 13.620 0.370 1.943 2.000000e+10 2.778e+09 - 1 5 7.812e+06 7.170 13.670 0.340 1.954 2.000000e+10 2.789e+09 - 1 6 6.510e+06 7.010 13.590 0.320 1.984 2.000000e+10 2.853e+09 - 1 7 5.580e+06 6.990 13.530 0.330 1.983 2.000000e+10 2.861e+09 - 1 8 4.883e+06 6.980 13.490 0.320 1.979 2.000000e+10 2.865e+09 - 2 1 1.953e+07 8.110 14.730 0.530 1.882 2.000000e+10 2.466e+09 - 2 2 9.766e+06 7.090 13.570 0.420 1.973 2.000000e+10 2.821e+09 - 2 3 6.510e+06 7.040 13.590 0.410 1.989 2.000000e+10 2.841e+09 - 2 4 4.883e+06 6.990 13.490 0.370 1.983 2.000000e+10 2.861e+09 - 2 5 3.906e+06 6.970 13.480 0.360 1.986 2.000000e+10 2.869e+09 - 2 6 3.255e+06 6.990 13.530 0.370 1.989 2.000000e+10 2.861e+09 - 2 7 2.790e+06 6.890 13.390 0.350 1.994 2.000000e+10 2.903e+09 - 2 8 2.441e+06 6.880 13.380 0.350 1.996 2.000000e+10 2.907e+09 - 3 1 1.302e+07 8.220 13.720 0.510 1.731 2.000000e+10 2.433e+09 - 3 2 6.510e+06 7.050 13.480 0.450 1.976 2.000000e+10 2.837e+09 - 3 3 4.340e+06 6.990 13.460 0.400 1.983 2.000000e+10 2.861e+09 - 3 4 3.255e+06 6.990 13.550 0.380 1.993 2.000000e+10 2.861e+09 - 3 5 2.604e+06 6.920 13.430 0.360 1.993 1.999999e+10 2.890e+09 - 3 6 2.170e+06 6.940 13.460 0.360 1.991 1.999999e+10 2.882e+09 - 3 7 1.860e+06 6.920 13.440 0.360 1.994 2.000000e+10 2.890e+09 - 3 8 1.628e+06 6.890 13.380 0.350 1.993 2.000000e+10 2.903e+09 - 4 1 9.766e+06 7.620 14.550 0.590 1.987 2.000000e+10 2.625e+09 - 4 2 4.883e+06 7.010 13.460 0.440 1.983 2.000000e+10 2.853e+09 - 4 3 3.255e+06 7.040 13.580 0.410 1.987 2.000000e+10 2.841e+09 - 4 4 2.441e+06 6.960 13.470 0.390 1.991 2.000000e+10 2.874e+09 - 4 5 1.953e+06 6.920 13.410 0.370 1.991 2.000000e+10 2.890e+09 - 4 6 1.628e+06 6.950 13.490 0.370 1.994 2.000000e+10 2.878e+09 - 4 7 1.395e+06 6.890 13.350 0.370 1.991 2.000000e+10 2.903e+09 - 4 8 1.221e+06 6.940 13.490 0.360 1.996 2.000000e+10 2.882e+09 - 5 1 7.812e+06 7.680 14.000 0.560 1.896 2.000000e+10 2.604e+09 - 5 2 3.906e+06 7.070 13.460 0.460 1.969 2.000000e+10 2.829e+09 - 5 3 2.604e+06 6.990 13.430 0.420 1.981 1.999999e+10 2.861e+09 - 5 4 1.953e+06 7.010 13.550 0.390 1.989 2.000000e+10 2.853e+09 - 5 5 1.562e+06 6.920 13.430 0.380 1.996 2.000000e+10 2.890e+09 - 5 6 1.302e+06 6.920 13.410 0.380 1.993 1.999999e+10 2.890e+09 - 5 7 1.116e+06 6.920 13.420 0.370 1.993 1.999999e+10 2.890e+09 - 5 8 9.766e+05 6.910 13.360 0.370 1.987 1.999999e+10 2.894e+09 - 6 1 6.510e+06 7.350 13.970 0.630 1.986 2.000000e+10 2.721e+09 - 6 2 3.255e+06 7.040 13.470 0.470 1.980 2.000000e+10 2.841e+09 - 6 3 2.170e+06 7.050 13.600 0.420 1.989 1.999999e+10 2.837e+09 - 6 4 1.628e+06 6.970 13.480 0.400 1.991 2.000000e+10 2.869e+09 - 6 5 1.302e+06 6.990 13.540 0.390 1.993 1.999999e+10 2.861e+09 - 6 6 1.085e+06 6.970 13.470 0.380 1.987 1.999999e+10 2.869e+09 - 6 7 9.301e+05 6.890 13.350 0.380 1.993 1.999999e+10 2.903e+09 - 6 8 8.138e+05 6.920 13.420 0.370 1.993 2.000000e+10 2.890e+09 - 7 1 5.580e+06 7.530 14.030 0.580 1.940 2.000000e+10 2.656e+09 - 7 2 2.790e+06 7.000 13.370 0.460 1.976 2.000000e+10 2.857e+09 - 7 3 1.860e+06 7.000 13.520 0.420 1.991 2.000000e+10 2.857e+09 - 7 4 1.395e+06 7.060 13.590 0.410 1.983 2.000000e+10 2.833e+09 - 7 5 1.116e+06 6.950 13.460 0.390 1.993 1.999999e+10 2.878e+09 - 7 6 9.301e+05 6.950 13.420 0.380 1.986 1.999999e+10 2.878e+09 - 7 7 7.972e+05 6.880 13.300 0.380 1.988 1.999998e+10 2.907e+09 - 7 8 6.975e+05 6.920 13.390 0.380 1.990 1.999998e+10 2.890e+09 - 8 1 4.883e+06 7.440 14.150 0.620 1.985 2.000000e+10 2.688e+09 - 8 2 2.441e+06 6.990 13.400 0.480 1.986 2.000000e+10 2.861e+09 - 8 3 1.628e+06 6.990 13.460 0.430 1.987 2.000000e+10 2.861e+09 - 8 4 1.221e+06 7.020 13.550 0.410 1.989 2.000000e+10 2.849e+09 - 8 5 9.766e+05 6.920 13.370 0.390 1.988 1.999999e+10 2.890e+09 - 8 6 8.138e+05 6.950 13.400 0.390 1.984 2.000000e+10 2.878e+09 - 8 7 6.975e+05 6.930 13.360 0.390 1.984 1.999998e+10 2.886e+09 - 8 8 6.104e+05 6.920 13.390 0.380 1.990 1.999998e+10 2.890e+09 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/ps3.dat b/gnuradio-core/src/examples/mp-sched/perf-data/ps3.dat deleted file mode 100644 index c9bac37cc1..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/ps3.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D Playstation 3 - 1 1 2.344e+07 9.970 9.960 0.280 1.027 1.200000e+10 1.204e+09 - 1 2 1.172e+07 12.590 24.430 0.400 1.972 1.200000e+10 9.531e+08 - 1 3 7.812e+06 12.200 22.790 0.360 1.898 1.200000e+10 9.836e+08 - 1 4 5.859e+06 12.450 24.440 0.360 1.992 1.200000e+10 9.639e+08 - 1 5 4.688e+06 12.390 24.100 0.360 1.974 1.200000e+10 9.685e+08 - 1 6 3.906e+06 12.360 24.200 0.370 1.988 1.200000e+10 9.709e+08 - 1 7 3.348e+06 12.460 24.390 0.360 1.986 1.200000e+10 9.631e+08 - 1 8 2.930e+06 12.440 24.400 0.360 1.990 1.200000e+10 9.646e+08 - 2 1 1.172e+07 12.580 24.660 0.490 1.999 1.200000e+10 9.539e+08 - 2 2 5.859e+06 12.480 24.290 0.420 1.980 1.200000e+10 9.615e+08 - 2 3 3.906e+06 12.500 24.500 0.400 1.992 1.200000e+10 9.600e+08 - 2 4 2.930e+06 12.440 24.400 0.390 1.993 1.200000e+10 9.646e+08 - 2 5 2.344e+06 12.500 24.510 0.380 1.991 1.200000e+10 9.600e+08 - 2 6 1.953e+06 12.450 24.480 0.380 1.997 1.200000e+10 9.639e+08 - 2 7 1.674e+06 12.450 24.430 0.380 1.993 1.200000e+10 9.639e+08 - 2 8 1.465e+06 12.430 24.450 0.380 1.998 1.199999e+10 9.654e+08 - 3 1 7.812e+06 12.280 23.600 0.460 1.959 1.200000e+10 9.772e+08 - 3 2 3.906e+06 12.690 24.760 0.430 1.985 1.200000e+10 9.456e+08 - 3 3 2.604e+06 12.610 24.700 0.410 1.991 1.200000e+10 9.516e+08 - 3 4 1.953e+06 12.440 24.410 0.400 1.994 1.200000e+10 9.646e+08 - 3 5 1.562e+06 12.400 24.370 0.380 1.996 1.200000e+10 9.677e+08 - 3 6 1.302e+06 12.440 24.450 0.380 1.996 1.200000e+10 9.646e+08 - 3 7 1.116e+06 12.470 24.470 0.380 1.993 1.200000e+10 9.623e+08 - 3 8 9.766e+05 12.440 24.440 0.380 1.995 1.199999e+10 9.646e+08 - 4 1 5.859e+06 12.670 24.710 0.500 1.990 1.200000e+10 9.471e+08 - 4 2 2.930e+06 12.600 24.600 0.440 1.987 1.200000e+10 9.524e+08 - 4 3 1.953e+06 12.490 24.480 0.410 1.993 1.200000e+10 9.608e+08 - 4 4 1.465e+06 12.400 24.340 0.400 1.995 1.199999e+10 9.677e+08 - 4 5 1.172e+06 12.440 24.410 0.390 1.994 1.200000e+10 9.646e+08 - 4 6 9.766e+05 12.440 24.440 0.390 1.996 1.199999e+10 9.646e+08 - 4 7 8.371e+05 12.450 24.420 0.390 1.993 1.199999e+10 9.639e+08 - 4 8 7.324e+05 12.370 24.310 0.380 1.996 1.199999e+10 9.701e+08 - 5 1 4.688e+06 12.890 24.790 0.500 1.962 1.200000e+10 9.310e+08 - 5 2 2.344e+06 12.620 24.680 0.450 1.991 1.200000e+10 9.509e+08 - 5 3 1.562e+06 12.430 24.360 0.410 1.993 1.200000e+10 9.654e+08 - 5 4 1.172e+06 12.420 24.390 0.410 1.997 1.200000e+10 9.662e+08 - 5 5 9.375e+05 12.430 24.380 0.400 1.994 1.200000e+10 9.654e+08 - 5 6 7.812e+05 12.400 24.340 0.400 1.995 1.200000e+10 9.677e+08 - 5 7 6.696e+05 12.360 24.290 0.390 1.997 1.199998e+10 9.709e+08 - 5 8 5.859e+05 12.420 24.370 0.390 1.994 1.199999e+10 9.662e+08 - 6 1 3.906e+06 12.990 25.320 0.560 1.992 1.200000e+10 9.238e+08 - 6 2 1.953e+06 12.610 24.550 0.440 1.982 1.200000e+10 9.516e+08 - 6 3 1.302e+06 12.520 24.310 0.420 1.975 1.200000e+10 9.585e+08 - 6 4 9.766e+05 12.460 24.310 0.420 1.985 1.199999e+10 9.631e+08 - 6 5 7.812e+05 12.440 24.240 0.410 1.982 1.200000e+10 9.646e+08 - 6 6 6.510e+05 12.430 24.170 0.410 1.977 1.199999e+10 9.654e+08 - 6 7 5.580e+05 12.450 24.230 0.410 1.979 1.199998e+10 9.639e+08 - 6 8 4.883e+05 12.490 24.190 0.420 1.970 1.199999e+10 9.608e+08 - 7 1 3.348e+06 13.150 24.280 0.500 1.884 1.200000e+10 9.125e+08 - 7 2 1.674e+06 12.480 24.170 0.430 1.971 1.200000e+10 9.615e+08 - 7 3 1.116e+06 12.480 24.430 0.440 1.993 1.200000e+10 9.615e+08 - 7 4 8.371e+05 12.380 24.270 0.420 1.994 1.199999e+10 9.693e+08 - 7 5 6.696e+05 12.390 24.290 0.430 1.995 1.199998e+10 9.685e+08 - 7 6 5.580e+05 12.430 24.300 0.430 1.990 1.199998e+10 9.654e+08 - 7 7 4.783e+05 12.460 24.360 0.430 1.990 1.199999e+10 9.631e+08 - 7 8 4.185e+05 12.460 24.340 0.430 1.988 1.199998e+10 9.631e+08 - 8 1 2.930e+06 12.960 24.600 0.530 1.939 1.200000e+10 9.259e+08 - 8 2 1.465e+06 12.580 24.240 0.440 1.962 1.199999e+10 9.539e+08 - 8 3 9.766e+05 12.520 24.060 0.430 1.956 1.199999e+10 9.585e+08 - 8 4 7.324e+05 12.420 24.200 0.410 1.981 1.199999e+10 9.662e+08 - 8 5 5.859e+05 12.430 24.310 0.430 1.990 1.199999e+10 9.654e+08 - 8 6 4.883e+05 12.430 24.130 0.420 1.975 1.199999e+10 9.654e+08 - 8 7 4.185e+05 12.800 24.220 0.490 1.930 1.199998e+10 9.375e+08 - 8 8 3.662e+05 12.460 24.340 0.430 1.988 1.199997e+10 9.631e+08 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/qs21-altivec.dat b/gnuradio-core/src/examples/mp-sched/perf-data/qs21-altivec.dat deleted file mode 100644 index 8364be363d..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/qs21-altivec.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D QS21 dual cell 3.2 GHz (using Altivec) - 1 1 3.516e+07 9.810 10.240 0.430 1.088 1.800000e+10 1.835e+09 - 1 2 3.516e+07 11.650 22.840 0.750 2.025 3.600000e+10 3.090e+09 - 1 3 2.344e+07 9.400 24.860 0.680 2.717 3.600000e+10 3.830e+09 - 1 4 1.758e+07 7.800 26.820 0.740 3.533 3.600000e+10 4.615e+09 - 1 5 1.406e+07 8.810 25.970 0.760 3.034 3.600000e+10 4.086e+09 - 1 6 1.172e+07 8.110 25.710 0.740 3.261 3.600000e+10 4.439e+09 - 1 7 1.004e+07 7.750 26.020 0.710 3.449 3.600000e+10 4.645e+09 - 1 8 8.789e+06 7.290 26.600 0.690 3.743 3.600000e+10 4.938e+09 - 2 1 3.516e+07 10.130 20.690 0.770 2.118 3.600000e+10 3.554e+09 - 2 2 1.758e+07 7.240 26.820 0.920 3.831 3.600000e+10 4.972e+09 - 2 3 1.172e+07 8.090 26.670 0.840 3.400 3.600000e+10 4.450e+09 - 2 4 8.789e+06 7.480 27.010 0.790 3.717 3.600000e+10 4.813e+09 - 2 5 7.031e+06 7.180 26.530 0.740 3.798 3.600000e+10 5.014e+09 - 2 6 5.859e+06 7.060 26.590 0.730 3.870 3.600000e+10 5.099e+09 - 2 7 5.022e+06 7.040 26.610 0.740 3.885 3.600000e+10 5.114e+09 - 2 8 4.395e+06 7.090 27.020 0.730 3.914 3.600000e+10 5.078e+09 - 3 1 2.344e+07 9.670 25.850 1.020 2.779 3.600000e+10 3.723e+09 - 3 2 1.172e+07 7.700 25.940 0.930 3.490 3.600000e+10 4.675e+09 - 3 3 7.812e+06 7.290 26.760 0.830 3.785 3.600000e+10 4.938e+09 - 3 4 5.859e+06 7.210 26.900 0.800 3.842 3.600000e+10 4.993e+09 - 3 5 4.688e+06 7.060 26.690 0.770 3.890 3.600000e+10 5.099e+09 - 3 6 3.906e+06 7.060 26.830 0.810 3.915 3.600000e+10 5.099e+09 - 3 7 3.348e+06 6.960 26.680 0.780 3.945 3.600000e+10 5.172e+09 - 3 8 2.930e+06 6.960 26.600 0.770 3.932 3.599999e+10 5.172e+09 - 4 1 1.758e+07 7.640 28.700 1.250 3.920 3.600000e+10 4.712e+09 - 4 2 8.789e+06 7.230 26.640 0.940 3.815 3.600000e+10 4.979e+09 - 4 3 5.859e+06 7.200 26.800 0.860 3.842 3.600000e+10 5.000e+09 - 4 4 4.395e+06 7.110 26.900 0.840 3.902 3.600000e+10 5.063e+09 - 4 5 3.516e+06 7.020 26.680 0.800 3.915 3.600000e+10 5.128e+09 - 4 6 2.930e+06 6.950 26.700 0.800 3.957 3.599999e+10 5.180e+09 - 4 7 2.511e+06 6.930 26.590 0.800 3.952 3.599999e+10 5.195e+09 - 4 8 2.197e+06 6.960 26.570 0.790 3.931 3.599999e+10 5.172e+09 - 5 1 1.406e+07 8.730 26.540 1.190 3.176 3.600000e+10 4.124e+09 - 5 2 7.031e+06 7.270 26.450 0.960 3.770 3.600000e+10 4.952e+09 - 5 3 4.688e+06 7.100 26.630 0.880 3.875 3.600000e+10 5.070e+09 - 5 4 3.516e+06 7.050 26.700 0.850 3.908 3.600000e+10 5.106e+09 - 5 5 2.812e+06 6.970 26.610 0.830 3.937 3.600000e+10 5.165e+09 - 5 6 2.344e+06 6.980 26.710 0.840 3.947 3.600000e+10 5.158e+09 - 5 7 2.009e+06 6.900 26.470 0.800 3.952 3.599999e+10 5.217e+09 - 5 8 1.758e+06 6.940 26.580 0.820 3.948 3.599999e+10 5.187e+09 - 6 1 1.172e+07 8.200 26.510 1.190 3.378 3.600000e+10 4.390e+09 - 6 2 5.859e+06 7.210 26.590 0.970 3.822 3.600000e+10 4.993e+09 - 6 3 3.906e+06 7.070 26.580 0.910 3.888 3.600000e+10 5.092e+09 - 6 4 2.930e+06 7.090 26.750 0.860 3.894 3.599999e+10 5.078e+09 - 6 5 2.344e+06 7.040 26.830 0.830 3.929 3.600000e+10 5.114e+09 - 6 6 1.953e+06 6.960 26.600 0.830 3.941 3.600000e+10 5.172e+09 - 6 7 1.674e+06 6.940 26.500 0.810 3.935 3.600000e+10 5.187e+09 - 6 8 1.465e+06 6.940 26.540 0.830 3.944 3.599998e+10 5.187e+09 - 7 1 1.004e+07 7.730 26.940 1.190 3.639 3.600000e+10 4.657e+09 - 7 2 5.022e+06 7.240 26.600 0.980 3.809 3.600000e+10 4.972e+09 - 7 3 3.348e+06 7.120 26.680 0.930 3.878 3.600000e+10 5.056e+09 - 7 4 2.511e+06 7.070 26.840 0.890 3.922 3.599999e+10 5.092e+09 - 7 5 2.009e+06 6.980 26.570 0.850 3.928 3.599999e+10 5.158e+09 - 7 6 1.674e+06 6.950 26.530 0.840 3.938 3.600000e+10 5.180e+09 - 7 7 1.435e+06 6.940 26.570 0.860 3.952 3.599998e+10 5.187e+09 - 7 8 1.256e+06 6.980 26.590 0.840 3.930 3.599999e+10 5.158e+09 - 8 1 8.789e+06 7.570 27.360 1.260 3.781 3.600000e+10 4.756e+09 - 8 2 4.395e+06 7.130 26.460 0.980 3.849 3.600000e+10 5.049e+09 - 8 3 2.930e+06 7.060 26.680 0.920 3.909 3.599999e+10 5.099e+09 - 8 4 2.197e+06 7.040 26.670 0.880 3.913 3.599999e+10 5.114e+09 - 8 5 1.758e+06 6.970 26.600 0.860 3.940 3.599999e+10 5.165e+09 - 8 6 1.465e+06 6.940 26.490 0.840 3.938 3.599998e+10 5.187e+09 - 8 7 1.256e+06 6.980 26.630 0.850 3.937 3.599999e+10 5.158e+09 - 8 8 1.099e+06 7.010 26.820 0.860 3.949 3.599997e+10 5.136e+09 diff --git a/gnuradio-core/src/examples/mp-sched/perf-data/qs21.dat b/gnuradio-core/src/examples/mp-sched/perf-data/qs21.dat deleted file mode 100644 index cc628740a8..0000000000 --- a/gnuradio-core/src/examples/mp-sched/perf-data/qs21.dat +++ /dev/null @@ -1,65 +0,0 @@ -#D QS21 dual cell 3.2 GHz - 1 1 1.953e+07 8.480 8.730 0.270 1.061 1.000000e+10 1.179e+09 - 1 2 1.953e+07 8.750 17.210 0.460 2.019 2.000000e+10 2.286e+09 - 1 3 1.302e+07 12.390 29.530 0.540 2.427 2.000000e+10 1.614e+09 - 1 4 9.766e+06 10.120 31.500 0.590 3.171 2.000000e+10 1.976e+09 - 1 5 7.812e+06 10.200 31.350 0.610 3.133 2.000000e+10 1.961e+09 - 1 6 6.510e+06 9.520 31.690 0.590 3.391 2.000000e+10 2.101e+09 - 1 7 5.580e+06 9.430 32.610 0.600 3.522 2.000000e+10 2.121e+09 - 1 8 4.883e+06 9.400 34.160 0.620 3.700 2.000000e+10 2.128e+09 - 2 1 1.953e+07 8.800 17.750 0.500 2.074 2.000000e+10 2.273e+09 - 2 2 9.766e+06 8.990 28.900 0.640 3.286 2.000000e+10 2.225e+09 - 2 3 6.510e+06 9.390 32.450 0.660 3.526 2.000000e+10 2.130e+09 - 2 4 4.883e+06 9.220 34.450 0.660 3.808 2.000000e+10 2.169e+09 - 2 5 3.906e+06 9.180 34.730 0.650 3.854 2.000000e+10 2.179e+09 - 2 6 3.255e+06 9.150 34.960 0.650 3.892 2.000000e+10 2.186e+09 - 2 7 2.790e+06 9.140 35.290 0.650 3.932 2.000000e+10 2.188e+09 - 2 8 2.441e+06 9.080 35.240 0.650 3.953 2.000000e+10 2.203e+09 - 3 1 1.302e+07 11.720 28.890 0.740 2.528 2.000000e+10 1.706e+09 - 3 2 6.510e+06 9.390 32.700 0.730 3.560 2.000000e+10 2.130e+09 - 3 3 4.340e+06 9.150 33.930 0.690 3.784 2.000000e+10 2.186e+09 - 3 4 3.255e+06 9.040 34.650 0.680 3.908 2.000000e+10 2.212e+09 - 3 5 2.604e+06 9.090 34.990 0.680 3.924 1.999999e+10 2.200e+09 - 3 6 2.170e+06 9.050 34.870 0.670 3.927 1.999999e+10 2.210e+09 - 3 7 1.860e+06 9.010 34.850 0.660 3.941 2.000000e+10 2.220e+09 - 3 8 1.628e+06 8.980 34.860 0.670 3.957 2.000000e+10 2.227e+09 - 4 1 9.766e+06 9.000 34.680 0.940 3.958 2.000000e+10 2.222e+09 - 4 2 4.883e+06 9.020 34.180 0.740 3.871 2.000000e+10 2.217e+09 - 4 3 3.255e+06 9.150 34.640 0.710 3.863 2.000000e+10 2.186e+09 - 4 4 2.441e+06 9.010 34.780 0.690 3.937 2.000000e+10 2.220e+09 - 4 5 1.953e+06 8.980 34.680 0.690 3.939 2.000000e+10 2.227e+09 - 4 6 1.628e+06 9.050 35.120 0.690 3.957 2.000000e+10 2.210e+09 - 4 7 1.395e+06 9.010 34.900 0.670 3.948 2.000000e+10 2.220e+09 - 4 8 1.221e+06 8.960 34.900 0.680 3.971 2.000000e+10 2.232e+09 - 5 1 7.812e+06 10.150 31.760 0.840 3.212 2.000000e+10 1.970e+09 - 5 2 3.906e+06 9.090 34.040 0.750 3.827 2.000000e+10 2.200e+09 - 5 3 2.604e+06 9.030 34.650 0.720 3.917 1.999999e+10 2.215e+09 - 5 4 1.953e+06 8.990 34.610 0.700 3.928 2.000000e+10 2.225e+09 - 5 5 1.562e+06 9.000 34.920 0.700 3.958 2.000000e+10 2.222e+09 - 5 6 1.302e+06 9.120 35.370 0.690 3.954 1.999999e+10 2.193e+09 - 5 7 1.116e+06 8.910 34.680 0.690 3.970 1.999999e+10 2.245e+09 - 5 8 9.766e+05 8.930 34.790 0.680 3.972 1.999999e+10 2.240e+09 - 6 1 6.510e+06 9.390 31.810 0.840 3.477 2.000000e+10 2.130e+09 - 6 2 3.255e+06 9.000 34.320 0.760 3.898 2.000000e+10 2.222e+09 - 6 3 2.170e+06 8.960 34.310 0.740 3.912 1.999999e+10 2.232e+09 - 6 4 1.628e+06 8.970 34.640 0.730 3.943 2.000000e+10 2.230e+09 - 6 5 1.302e+06 9.110 35.360 0.710 3.959 1.999999e+10 2.195e+09 - 6 6 1.085e+06 8.970 34.750 0.710 3.953 1.999999e+10 2.230e+09 - 6 7 9.301e+05 8.950 34.710 0.700 3.956 1.999999e+10 2.235e+09 - 6 8 8.138e+05 8.920 34.570 0.710 3.955 2.000000e+10 2.242e+09 - 7 1 5.580e+06 9.290 32.840 0.870 3.629 2.000000e+10 2.153e+09 - 7 2 2.790e+06 9.040 34.400 0.770 3.890 2.000000e+10 2.212e+09 - 7 3 1.860e+06 8.940 34.380 0.740 3.928 2.000000e+10 2.237e+09 - 7 4 1.395e+06 8.990 34.820 0.730 3.954 2.000000e+10 2.225e+09 - 7 5 1.116e+06 8.990 34.820 0.720 3.953 1.999999e+10 2.225e+09 - 7 6 9.301e+05 8.940 34.720 0.720 3.964 1.999999e+10 2.237e+09 - 7 7 7.972e+05 8.930 34.700 0.710 3.965 1.999998e+10 2.240e+09 - 7 8 6.975e+05 8.910 34.510 0.700 3.952 1.999998e+10 2.245e+09 - 8 1 4.883e+06 9.070 33.770 0.910 3.824 2.000000e+10 2.205e+09 - 8 2 2.441e+06 9.000 34.340 0.780 3.902 2.000000e+10 2.222e+09 - 8 3 1.628e+06 8.990 34.510 0.740 3.921 2.000000e+10 2.225e+09 - 8 4 1.221e+06 8.980 34.650 0.740 3.941 2.000000e+10 2.227e+09 - 8 5 9.766e+05 8.960 34.700 0.720 3.953 1.999999e+10 2.232e+09 - 8 6 8.138e+05 8.920 34.680 0.710 3.967 2.000000e+10 2.242e+09 - 8 7 6.975e+05 8.900 34.580 0.720 3.966 1.999998e+10 2.247e+09 - 8 8 6.104e+05 8.930 34.590 0.710 3.953 1.999998e+10 2.240e+09 diff --git a/gnuradio-core/src/examples/mp-sched/plot_flops.py b/gnuradio-core/src/examples/mp-sched/plot_flops.py deleted file mode 100755 index d9d810ae2f..0000000000 --- a/gnuradio-core/src/examples/mp-sched/plot_flops.py +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2008 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# - -""" -Reads output from run_synthetic.py and runs gnuplot showing -GFLOPS as f(npipes, nstages) -""" - -import re -import sys -import os -import tempfile -from optparse import OptionParser - - -def parse_file(input_filename, output): - last = None - desc = '' - for line in open(input_filename, 'r'): - s = line.strip() - if s.startswith('>>>'): # ignore ">>> using SSE cruft" - continue - - if s.startswith('#D'): # machine description - desc = s[2:].strip() - continue - - fields = s.split() - npipes, nstages, flops = fields[0], fields[1], fields[8] - - if last is not None and npipes != last: - output.write('\n') - last = npipes - - output.write(' '.join((npipes, nstages, flops))) - output.write('\n') - - output.flush() - return desc - - -def handle_file(input_filename): - cmd_file = tempfile.NamedTemporaryFile(mode='w+', prefix='pf', suffix='.cmd') - cmd_file_name = cmd_file.name - data_file = tempfile.NamedTemporaryFile(mode='w+', prefix='pf', suffix='.dat') - data_file_name = data_file.name - desc = parse_file(input_filename, data_file) - if len(desc) > 0: - cmd_file.write("set title '%s'\n" % (desc,)) - cmd_file.write("set xlabel 'N pipes'\n") - cmd_file.write("set ylabel 'N stages'\n") - cmd_file.write("set zlabel 'GFLOPS'\n") - cmd_file.write("set key off\n") - cmd_file.write("set view 60, 312\n") - cmd_file.write("set pm3d\n") - cmd_file.write("splot '%s' using 1:2:($3*1e-9) with pm3d at b, '%s' using 1:2:($3*1e-9) with pm3d\n" % ( - data_file_name, data_file_name)) - - cmd_file.flush() - data_file.flush() - - os.system("gnuplot " + cmd_file_name + " -") - - #sys.stdout.write(open(cmd_file_name,'r').read()) - #sys.stdout.write(open(data_file_name,'r').read()) - - -def main(): - usage = "usage: %prog [options] file.dat" - parser = OptionParser(usage=usage) - (options, args) = parser.parse_args() - if len(args) != 1: - parser.print_help() - raise SystemExit, 1 - - handle_file(args[0]) - - -if __name__ == '__main__': - main() diff --git a/gnuradio-core/src/examples/mp-sched/run_synthetic.py b/gnuradio-core/src/examples/mp-sched/run_synthetic.py deleted file mode 100755 index 4896bca462..0000000000 --- a/gnuradio-core/src/examples/mp-sched/run_synthetic.py +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2008 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# - -""" -Run synthetic.py for npipes in [1,16], nstages in [1,16] -""" - -import re -import sys -import os -import tempfile -from optparse import OptionParser - - -def write_shell_script(f, data_filename, description, ncores, gflops, max_pipes_and_stages): - """ - f is the file to write the script to - data_filename is the where the data ends up - description describes the machine - ncores is the number of cores (used to size the workload) - gflops is the estimated GFLOPS per core (used to size the workload) - """ - - f.write("#!/bin/sh\n") - f.write("(\n") - if description: - f.write("echo '#D %s'\n" % (description,)) - - for npipes in range(1, max_pipes_and_stages + 1): - for nstages in range(1, max_pipes_and_stages + 1): - # We'd like each run of synthetic to take ~10 seconds - desired_time_per_run = 10 - est_gflops_avail = min(nstages * npipes, ncores) * gflops - nsamples = (est_gflops_avail * desired_time_per_run)/(512.0 * nstages * npipes) - nsamples = int(nsamples * 1e9) - - cmd = "./synthetic.py -m -s %d -p %d -N %d\n" % (nstages, npipes, nsamples) - f.write(cmd) - f.write('if test $? -ge 128; then exit 128; fi\n') - - f.write(") 2>&1 | grep --line-buffered -v '^>>>' | tee %s\n" % (data_filename,)) - f.flush() - - - -def main(): - description = """%prog gathers multiprocessor scaling data using the ./synthetic.py benchmark. -All combinations of npipes and nstages between 1 and --max-pipes-and-stages are tried. -The -n and -f options provides hints used to size the workload. We'd like each run -of synthetic to take about 10 seconds. For the full 16x16 case this results in a -total runtime of about 43 minutes, assuming that your values for -n and -f are reasonable. -For x86 machines, assume 3 FLOPS per processor Hz. E.g., 3 GHz machine -> 9 GFLOPS. -plot_flops.py will make pretty graphs from the output data generated by %prog. -""" - usage = "usage: %prog [options] output.dat" - parser = OptionParser(usage=usage, description=description) - parser.add_option("-d", "--description", metavar="DESC", - help="machine description, e.g., \"Dual quad-core Xeon 3 GHz\"", default=None) - parser.add_option("-n", "--ncores", type="int", default=1, - help="number of processor cores [default=%default]") - parser.add_option("-g", "--gflops", metavar="GFLOPS", type="float", default=3.0, - help="estimated GFLOPS per core [default=%default]") - parser.add_option("-m", "--max-pipes-and-stages", metavar="MAX", type="int", default=16, - help="maximum number of pipes and stages to use [default=%default]") - (options, args) = parser.parse_args() - if len(args) != 1: - parser.print_help() - raise SystemExit, 1 - - output_filename = args[0] - - shell = os.popen("/bin/sh", "w") - - write_shell_script(shell, - output_filename, - options.description, - options.ncores, - options.gflops, - options.max_pipes_and_stages) - -if __name__ == '__main__': - main() - diff --git a/gnuradio-core/src/examples/mp-sched/synthetic.py b/gnuradio-core/src/examples/mp-sched/synthetic.py deleted file mode 100755 index 6f0bb85da8..0000000000 --- a/gnuradio-core/src/examples/mp-sched/synthetic.py +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2008,2013 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# - -from gnuradio import gr, gru, eng_notation, blks2 -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser -import os - - -class pipeline(gr.hier_block2): - def __init__(self, nstages, ntaps=256): - """ - Create a pipeline of nstages of filter.fir_filter_fff's connected in serial - terminating in a blocks.null_sink. - """ - gr.hier_block2.__init__(self, "pipeline", - gr.io_signature(1, 1, gr.sizeof_float), - gr.io_signature(0, 0, 0)) - taps = ntaps*[1.0/ntaps] - upstream = self - for i in range(nstages): - op = filter.fir_filter_fff(1, taps) - self.connect(upstream, op) - upstream = op - - self.connect(upstream, blocks.null_sink(gr.sizeof_float)) - - -class top(gr.top_block): - def __init__(self): - gr.top_block.__init__(self) - - default_nsamples = 10e6 - parser=OptionParser(option_class=eng_option) - parser.add_option("-p", "--npipelines", type="intx", default=1, - metavar="NPIPES", help="the number of pipelines to create (default=%default)") - parser.add_option("-s", "--nstages", type="intx", default=1, - metavar="NSTAGES", help="the number of stages in each pipeline (default=%default)") - parser.add_option("-N", "--nsamples", type="eng_float", default=default_nsamples, - help=("the number of samples to run through the graph (default=%s)" % - (eng_notation.num_to_str(default_nsamples)))) - parser.add_option("-m", "--machine-readable", action="store_true", default=False, - help="enable machine readable output") - - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - self.npipes = options.npipelines - self.nstages = options.nstages - self.nsamples = options.nsamples - self.machine_readable = options.machine_readable - - ntaps = 256 - - # Something vaguely like floating point ops - self.flop = 2 * ntaps * options.npipelines * options.nstages * options.nsamples - - src = blocks.null_source(gr.sizeof_float) - head = blocks.head(gr.sizeof_float, int(options.nsamples)) - self.connect(src, head) - - for n in range(options.npipelines): - self.connect(head, pipeline(options.nstages, ntaps)) - - -def time_it(tb): - start = os.times() - tb.run() - stop = os.times() - delta = map((lambda a, b: a-b), stop, start) - user, sys, childrens_user, childrens_sys, real = delta - total_user = user + childrens_user - total_sys = sys + childrens_sys - if tb.machine_readable: - print "%3d %3d %.3e %7.3f %7.3f %7.3f %7.3f %.6e %.3e" % ( - tb.npipes, tb.nstages, tb.nsamples, real, total_user, total_sys, (total_user+total_sys)/real, tb.flop, tb.flop/real) - else: - print "npipes %7d" % (tb.npipes,) - print "nstages %7d" % (tb.nstages,) - print "nsamples %s" % (eng_notation.num_to_str(tb.nsamples),) - print "real %7.3f" % (real,) - print "user %7.3f" % (total_user,) - print "sys %7.3f" % (total_sys,) - print "(user+sys)/real %7.3f" % ((total_user + total_sys)/real,) - print "pseudo_flop %s" % (eng_notation.num_to_str(tb.flop),) - print "pseudo_flop/real %s" % (eng_notation.num_to_str(tb.flop/real),) - - -if __name__ == "__main__": - try: - tb = top() - time_it(tb) - except KeyboardInterrupt: - raise SystemExit, 128 - - - - diff --git a/gnuradio-core/src/examples/mp-sched/wfm_rcv_pll_to_wav.py b/gnuradio-core/src/examples/mp-sched/wfm_rcv_pll_to_wav.py deleted file mode 100755 index 7cf3210b0e..0000000000 --- a/gnuradio-core/src/examples/mp-sched/wfm_rcv_pll_to_wav.py +++ /dev/null @@ -1,128 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2005,2006,2007 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr, gru, eng_notation, optfir -from gnuradio import audio -from gnuradio import analog -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser -import sys -import math - -class wfm_rx_block (gr.top_block): - def __init__(self): - gr.top_block.__init__(self) - - usage = "usage: %prog [options] input-samples-320kS.dat output.wav" - parser=OptionParser(option_class=eng_option, usage=usage) - parser.add_option("-V", "--volume", type="eng_float", default=None, - help="set volume (default is midpoint)") - - (options, args) = parser.parse_args() - if len(args) != 2: - parser.print_help() - sys.exit(1) - - input_filename = args[0] - output_filename = args[1] - - self.vol = 0 - - # build graph - - self.src = blocks.file_source(gr.sizeof_gr_complex, input_filename, False) - - adc_rate = 64e6 # 64 MS/s - usrp_decim = 200 - usrp_rate = adc_rate / usrp_decim # 320 kS/s - chanfilt_decim = 1 - demod_rate = usrp_rate / chanfilt_decim - audio_decimation = 10 - audio_rate = demod_rate / audio_decimation # 32 kHz - - - chan_filt_coeffs = optfir.low_pass (1, # gain - usrp_rate, # sampling rate - 80e3, # passband cutoff - 115e3, # stopband cutoff - 0.1, # passband ripple - 60) # stopband attenuation - #print len(chan_filt_coeffs) - chan_filt = filter.fir_filter_ccf (chanfilt_decim, chan_filt_coeffs) - - - #self.guts = analog.wfm_rcv (demod_rate, audio_decimation) - self.guts = analog.wfm_rcv_pll (demod_rate, audio_decimation) - - # FIXME rework {add,multiply}_const_* to handle multiple streams - self.volume_control_l = blocks.multiply_const_ff(self.vol) - self.volume_control_r = blocks.multiply_const_ff(self.vol) - - # wave file as final sink - if 1: - sink = blocks.wavfile_sink(output_filename, 2, int(audio_rate), 16) - else: - sink = audio.sink (int (audio_rate), - options.audio_output, - False) # ok_to_block - - # now wire it all together - self.connect (self.src, chan_filt, self.guts) - self.connect ((self.guts, 0), self.volume_control_l, (sink, 0)) - self.connect ((self.guts, 1), self.volume_control_r, (sink, 1)) - try: - self.guts.stereo_carrier_pll_recovery.squelch_enable(True) - except: - pass - #print "FYI: This implementation of the stereo_carrier_pll_recovery has no squelch implementation yet" - - if options.volume is None: - g = self.volume_range() - options.volume = float(g[0]+g[1])/2 - - # set initial values - - self.set_vol(options.volume) - try: - self.guts.stereo_carrier_pll_recovery.set_lock_threshold(options.squelch) - except: - pass - #print "FYI: This implementation of the stereo_carrier_pll_recovery has no squelch implementation yet" - - - def set_vol (self, vol): - g = self.volume_range() - self.vol = max(g[0], min(g[1], vol)) - self.volume_control_l.set_k(10**(self.vol/10)) - self.volume_control_r.set_k(10**(self.vol/10)) - - def volume_range(self): - return (-20.0, 0.0, 0.5) - - -if __name__ == '__main__': - tb = wfm_rx_block() - try: - tb.run() - except KeyboardInterrupt: - pass diff --git a/gnuradio-core/src/examples/network/CMakeLists.txt b/gnuradio-core/src/examples/network/CMakeLists.txt deleted file mode 100644 index 902933e297..0000000000 --- a/gnuradio-core/src/examples/network/CMakeLists.txt +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2011 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. - -GR_PYTHON_INSTALL(PROGRAMS - audio_sink.py - audio_source.py - dial_tone_sink.py - dial_tone_source.py - vector_sink.py - vector_source.py - DESTINATION ${GR_PKG_DATA_DIR}/examples/network - COMPONENT "core_python" -) - diff --git a/gnuradio-core/src/examples/network/audio_sink.py b/gnuradio-core/src/examples/network/audio_sink.py deleted file mode 100755 index 0e412de5ae..0000000000 --- a/gnuradio-core/src/examples/network/audio_sink.py +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2007,2010 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser -import sys - -try: - from gnuradio import audio -except ImportError: - sys.stderr.write("Failed to import gnuradio.audio. Make sure gr-audio component is installed.\n") - sys.exit(1) - -class audio_sink(gr.top_block): - def __init__(self, host, port, pkt_size, sample_rate, eof, wait): - gr.top_block.__init__(self, "audio_sink") - src = blocks.udp_source(gr.sizeof_float, host, port, pkt_size, eof=eof) - dst = audio.sink(sample_rate) - self.connect(src, dst) - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="0.0.0.0", - help="local host name (domain name or IP address)") - parser.add_option("", "--port", type="int", default=65500, - help="port value to listen to for connection") - parser.add_option("", "--packet-size", type="int", default=1472, - help="packet size.") - parser.add_option("-r", "--sample-rate", type="int", default=32000, - help="audio signal sample rate [default=%default]") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - # Create an instance of a hierarchical block - top_block = audio_sink(options.host, options.port, - options.packet_size, options.sample_rate, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass - diff --git a/gnuradio-core/src/examples/network/audio_source.py b/gnuradio-core/src/examples/network/audio_source.py deleted file mode 100755 index 577beff84c..0000000000 --- a/gnuradio-core/src/examples/network/audio_source.py +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2007,2010 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser -import sys - -try: - from gnuradio import audio -except ImportError: - sys.stderr.write("Failed to import gnuradio.audio. Make sure gr-audio component is installed.\n") - sys.exit(1) - -class audio_source(gr.top_block): - def __init__(self, host, port, pkt_size, sample_rate, eof): - gr.top_block.__init__(self, "audio_source") - self.audio = audio.source(sample_rate) - self.sink = blocks.udp_sink(gr.sizeof_float, host, port, pkt_size, eof=eof) - self.connect(self.audio, self.sink) - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="localhost", - help="Remote host name (domain name or IP address") - parser.add_option("", "--port", type="int", default=65500, - help="port number to connect to") - parser.add_option("", "--packet-size", type="int", default=1472, - help="packet size.") - parser.add_option("-r", "--sample-rate", type="int", default=32000 , - help="audio signal sample rate [default=%default]") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - # Create an instance of a hierarchical block - top_block = audio_source(options.host, options.port, - options.packet_size, options.sample_rate, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass - diff --git a/gnuradio-core/src/examples/network/dial_tone_sink.py b/gnuradio-core/src/examples/network/dial_tone_sink.py deleted file mode 100755 index fee6ded846..0000000000 --- a/gnuradio-core/src/examples/network/dial_tone_sink.py +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2007,2010 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr, audio -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser - -class dial_tone_sink(gr.top_block): - def __init__(self, host, port, pkt_size, sample_rate, eof): - gr.top_block.__init__(self, "dial_tone_sink") - udp = blokcs.udp_source(gr.sizeof_float, host, port, pkt_size, eof=eof) - sink = audio.sink(sample_rate) - self.connect(udp, sink) - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="0.0.0.0", - help="local host name (domain name or IP address)") - parser.add_option("", "--port", type="int", default=65500, - help="port value to listen to for connection") - parser.add_option("", "--packet-size", type="int", default=1472, - help="packet size.") - parser.add_option("-r", "--sample-rate", type="int", default=8000, - help="audio signal sample rate [default=%default]") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - # Create an instance of a hierarchical block - top_block = dial_tone_sink(options.host, options.port, - options.packet_size, options.sample_rate, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass - diff --git a/gnuradio-core/src/examples/network/dial_tone_source.py b/gnuradio-core/src/examples/network/dial_tone_source.py deleted file mode 100755 index 44f05dc83c..0000000000 --- a/gnuradio-core/src/examples/network/dial_tone_source.py +++ /dev/null @@ -1,82 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2007,2010 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser -import sys - -try: - from gnuradio import analog -except ImportError: - sys.stderr.write("This example requires gr-analog.\n") - -try: - from gnuradio import blocks -except ImportError: - sys.stderr.write("This example requires gr-blocks.\n") - -class dial_tone_source(gr.top_block): - def __init__(self, host, port, pkt_size, sample_rate, eof): - gr.top_block.__init__(self, "dial_tone_source") - - amplitude = 0.3 - src0 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 350, amplitude) - src1 = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 440, amplitude) - add = blocks.add_ff() - - # Throttle needed here to account for the other side's audio card sampling rate - thr = blocks.throttle(gr.sizeof_float, sample_rate) - sink = blocks.udp_sink(gr.sizeof_float, host, port, pkt_size, eof=eof) - self.connect(src0, (add, 0)) - self.connect(src1, (add, 1)) - self.connect(add, thr, sink) - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="localhost", - help="Remote host name (domain name or IP address") - parser.add_option("", "--port", type="int", default=65500, - help="port number to connect to") - parser.add_option("", "--packet-size", type="int", default=1472, - help="packet size.") - parser.add_option("-r", "--sample-rate", type="int", default=8000, - help="audio signal sample rate [default=%default]") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - # Create an instance of a hierarchical block - top_block = dial_tone_source(options.host, options.port, - options.packet_size, options.sample_rate, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass diff --git a/gnuradio-core/src/examples/network/vector_sink.py b/gnuradio-core/src/examples/network/vector_sink.py deleted file mode 100755 index c0397d1e43..0000000000 --- a/gnuradio-core/src/examples/network/vector_sink.py +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2010 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser - -class vector_sink(gr.top_block): - def __init__(self, host, port, pkt_size, eof, wait): - gr.top_block.__init__(self, "vector_sink") - - udp = blocks.udp_source(gr.sizeof_float, host, port, pkt_size, eof=eof) - sink = blocks.file_sink(gr.sizeof_float, "received.dat") - self.connect(udp, sink) - -if __name__ == "__main__": - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="0.0.0.0", - help="local host name (domain name or IP address)") - parser.add_option("", "--port", type="int", default=65500, - help="port value to listen to for connection") - parser.add_option("", "--packet-size", type="int", default=1471, - help="packet size.") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - - # Create an instance of a hierarchical block - top_block = vector_sink(options.host, options.port, - options.packet_size, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass - diff --git a/gnuradio-core/src/examples/network/vector_source.py b/gnuradio-core/src/examples/network/vector_source.py deleted file mode 100755 index 568425fd50..0000000000 --- a/gnuradio-core/src/examples/network/vector_source.py +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2006,2010,2013 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. -# - -from gnuradio import gr -from gnuradio import blocks -from gnuradio.eng_option import eng_option -from optparse import OptionParser - -class vector_source(gr.top_block): - def __init__(self, host, port, pkt_size, eof): - gr.top_block.__init__(self, "vector_source") - data = [i*0.01 for i in range(1000)] - vec = blocks.vector_source_f(data, True) - udp = blocks.udp_sink(gr.sizeof_float, host, port, pkt_size, eof=eof) - self.connect(vec, udp) - -if __name__ == '__main__': - parser = OptionParser(option_class=eng_option) - parser.add_option("", "--host", type="string", default="localhost", - help="Remote host name (domain name or IP address") - parser.add_option("", "--port", type="int", default=65500, - help="port number to connect to") - parser.add_option("", "--packet-size", type="int", default=1471, - help="packet size.") - parser.add_option("", "--no-eof", action="store_true", default=False, - help="don't send EOF on disconnect") - (options, args) = parser.parse_args() - if len(args) != 0: - parser.print_help() - raise SystemExit, 1 - -# Create an instance of a hierarchical block - top_block = vector_source(options.host, options.port, options.packet_size, - not options.no_eof) - - try: - # Run forever - top_block.run() - except KeyboardInterrupt: - # Ctrl-C exits - pass - diff --git a/gnuradio-core/src/examples/volk_benchmark/CMakeLists.txt b/gnuradio-core/src/examples/volk_benchmark/CMakeLists.txt deleted file mode 100644 index 255d9bf5cc..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/CMakeLists.txt +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright 2012 Free Software Foundation, Inc. -# -# This file is part of GNU Radio -# -# GNU Radio is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GNU Radio is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Radio; see the file COPYING. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, -# Boston, MA 02110-1301, USA. - -include(GrPython) - -GR_PYTHON_INSTALL(PROGRAMS - volk_math.py - volk_plot.py - volk_test_funcs.py - volk_types.py - DESTINATION ${GR_PKG_DATA_DIR}/examples/volk_benchmark - COMPONENT "core_python" -) - -install( - FILES README - DESTINATION ${GR_PKG_DATA_DIR}/examples/volk_benchmark - COMPONENT "core_python" -) diff --git a/gnuradio-core/src/examples/volk_benchmark/README b/gnuradio-core/src/examples/volk_benchmark/README deleted file mode 100644 index c58b40d115..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/README +++ /dev/null @@ -1,252 +0,0 @@ -VOLK Benchmarking Scripts - -The Python programs in this directory are designed to help benchmark -and compare Volk enhancements to GNU Radio. There are two kinds of -scripts here: collecting data and displaying the data. - -Data collection is done by running a Volk testing script that will -populate a SQLite database file (volk_results.db by default). The -plotting utility provided here reads from the database files and plots -bar graphs to compare the different installations. - -These benchmarks can be used to compare previous versions of GNU -Radio to using Volk; they can be used to compare different Volk -proto-kernels, as well, by editing the volk_config file; or they could -be used to compare performance between different machines and/or -processors. - - -====================================================================== -Volk Profiling - -Before doing any kind of Volk benchmarking, it is important to run the -volk_profile program. The profiler will build a config file for the -best SIMD architecture for your processor. Run volk_profile that is -installed into $PREFIX/bin. This program tests all known Volk kernels -for each proto-kernel supported by the processor. When finished, it -will write to $HOME/.volk/volk_config the best architecture for the -VOLK function. This file is read when using a function to know the -best version of the function to execute. - -The volk_config file contains a line for each kernel, where each line -looks like: - - volk_<KERNEL_NAME> <ARCHITECTURE> - -The architecture will be something like (sse, sse2, sse3, avx, neon, -etc.), depending on your processor. - - -====================================================================== -Benchmark Tests - -There are currently two benchmark scripts defined for collecting -data. There is one that runs through the type conversions that have -been converted to Volk (volk_types.py) and the other runs through the -math operators converted to using Volk (volk_math.py). - -Script prototypes -Both have the same structure for use: - ----------------------------------------------------------------------- -./volk_<test>.py [-h] -L LABEL [-D DATABASE] [-N NITEMS] [-I ITERATIONS] - [--tests [{0,1,2,3} [{0,1,2,3} ...]]] [--list] - [--all] - -optional arguments: - -h, --help show this help message and exit - -L LABEL, --label LABEL - Label of database table [default: None] - -D DATABASE, --database DATABASE - Database file to store data in [default: - volk_results.db] - -N NITEMS, --nitems NITEMS - Number of items per iterations [default: 1000000000.0] - -I ITERATIONS, --iterations ITERATIONS - Number of iterations [default: 20] - --tests [{0,1,2,3} [{0,1,2,3} ...]] - A list of tests to run; can be a single test or a - space-separated list. - --list List the available tests - --all Run all tests ----------------------------------------------------------------------- - -To run, you specify the tests to run and a label to store along with -the results. To find out what the available tests are, use the -'--list' option. - -To specify a subset of tests, use the '--tests' with space-separated -list of tests numbers (e.g., --tests 0 2 4 9). - -Use the '--all' to run all tests. - -The label specified is used as an identifier for the benchmarking -currently being done. This is required as it is important in -organizing the data in the database (each label is its own -table). Usually, the label will specify the type of run being done, -such as "volk_aligned" or "v3_5_1". In these cases, the "volk_aligned" -label says that this is for a benchmarking using the GNU Radio version -that uses the aligned scheduler and Volk calls in the work -functions. The "v3_5_1" label is if you were benchmarking an installed -version 3.5.1 of GNU Radio, which is pre-Volk. These will then be -plotted against each other to see the timing differences. - -The 'database' option will output the results to a new database -file. This can be useful for separating the output of different runs -or of different benchmarks, such as the types versus the math scripts, -say, or to distinguish results from different computers. - -If rerun using the same database and label, the entries in the table -will simply be replaced by the new results. - -It is often useful to use the 'sqlitebrowser' program to interrogate -the database file farther, if you are interested in the structure or -the raw data. - -Other parameters of this script set the number of items to process and -number of iterations to use when computing the benchmarking -data. These default to 1 billion samples per iteration over 20 -iterations. Expect a default run to take a long time. Using the '-N' -and '-I' options can be used to change the runtime of the benchmarks -but are set high to remove problems of variance between iterations. - -====================================================================== -Plotting Results - -The volk_plot.py script reads a given database file and plots the -results. The default behavior is to read all of the labels stored in -the database and plot them as data sets on a bar graph. This shows the -average time taken to process the number of items given. - -The options for the plotting script are: - -usage: volk_plot.py [-h] [-D DATABASE] [-E] [-P {mean,min,max}] [-% table] - -Plot Volk performance results from a SQLite database. Run one of the volk -tests first (e.g, volk_math.py) - ----------------------------------------------------------------------- -optional arguments: - -h, --help show this help message and exit - -D DATABASE, --database DATABASE - Database file to read data from [default: - volk_results.db] - -E, --errorbars Show error bars (1 standard dev.) - -P {mean,min,max}, --plot {mean,min,max} - Set the type of plot to produce [default: mean] - -% table, --percent table - Show percent difference to the given type [default: - None] ----------------------------------------------------------------------- - -This script allows you to specify the database used (-D), but will -always read all rows from all tables from it and display them. You can -also turn on plotting error bars (1 standard deviation the mean). Be -careful, though, as some older versions of Matplotlib might have an -issue with this option. - -The mean time is only one possible statistic that we might be -interested in when looking at the data. It represents the average user -experience when running a given block. On the other hand, the minimum -runtime best represents the actual performance of a block given -minimal OS interruptions while running. Right now, the data collected -includes the mean, variance, min, and max over the number of -iterations given. Using the '-P' option, you can specify the type of -data to plot (mean, min, or max). - -Another useful way of looking at the data is to compare the percent -improvement of a benchmark compared to another. This is done using the -'-%' option with the provided table (or label) as the baseline. So if -we were interested in comparing how much the 'volk_aligned' was over -'v3_5_1', we would specify '-% v3_5_1' to see this. The plot would -then only show the percent speedup observed using Volk for each of the -blocks. - - -====================================================================== -Benchmarking Walkthrough - -This will walk through an example of benchmarking the new Volk -implementation versus the pre-Volk GNU Radio. It also shows how to -look at the SIMD optimized versions versus the generic -implementations. - -Since we introduced Volk in GNU Radio 3.5.2, we will use the following -labels for our data: - - 1.) volk_aligned: v3.5.2 with volk_profile results in .volk/volk_config - 2.) v3_5_2: v3.5.2 with the generic (non-SIMD) calls to Volk - 3.) v3_5_1: an installation of GNU Radio from version v3.5.1 - -We assume that we have installed two versions of GNU Radio. - - v3.5.2 installed into /opt/gr-3_5_2 - v3.5.1 installed into /opt/gr-3_5_1 - -To test cases 1 and 2 above, we have to run GNU Radio from the v3.5.2 -installation, so we set the following environmental variables. Note -that this is written for Ubuntu 11.10. These commands and directories -may have to be changed depending on your OS and versions. - - export LD_LIBRARY_PATH=/opt/gr-3_5_2/lib - export LD_LIBRARY_PATH=/opt/gr-3_5_2/lib/python2.7/dist-packages - -Now we can run the benchmark tests, so we will focus on the math -operators: - - ./volk_math.py -D volk_results_math.db --all -L volk_aligned - -When this finishes, the 'volk_results_math.db' will contain our -results for this run. - -We next want to run the generic, non-SIMD, calls. This can be done by -changing the Volk kernel settings in $HOME/.volk/volk_config. First, -make a backup of this file. Then edit it and change all architecture -calls (sse, sse2, etc.) to 'generic.' Now, Volk will only call the -generic versions of these functions. So we rerun the benchmark with: - - ./volk_math.py -D volk_results_math.db --all -L v3_5_2 - -Notice that the only thing changed here was the label to 'v3_5_2'. - -Next, we want to collect data for the non-Volk version of GNU -Radio. This is important because some internals to GNU Radio were made -when adding support for Volk, so it is nice to know what the -differences do to our performance. First, we set the environmental -variables to point to the v3.5.1 installation: - - export LD_LIBRARY_PATH=/opt/gr-3_5_1/lib - export LD_LIBRARY_PATH=/opt/gr-3_5_1/lib/python2.7/dist-packages - -And when we run the test, we use the same command line, but the GNU -Radio libraries and Python files used come from v3.5.1. We also change -the label to indicate the different version to store. - - ./volk_math.py -D volk_results_math.db --all -L v3_5_1 - -We now have a database populated with three tables for the three -different labels. We can plot them all together by simply running: - - ./volk_plot.py -D volk_results_math.db - -This will show the average run times for each of the three -configurations for all math functions tested. We might also be -interested to see the difference in performance from the v3.5.1 -version, so we can run: - - ./volk_plot.py -D volk_results_math.db -% v3_5_1 - -That will plot both the 'volk_aligned' and 'v3_5_2' as a percentage -improvement over v3_5_1. A positive value indicates that this version -runs faster than the v3.5.1 version. - - ----------------------------------------------------------------------- - -Another interesting test case could be to compare results on different -processors. So if you have different generation Intels, AMD, or -whatever, you can simply pass the .db file around and run the Volk -benchmark script to populate the database with different results. For -this, you would specify a label like '-L i7_2620M' that indicates the -processor type to uniquely ID the data. - diff --git a/gnuradio-core/src/examples/volk_benchmark/volk_math.py b/gnuradio-core/src/examples/volk_benchmark/volk_math.py deleted file mode 100755 index 753257c237..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/volk_math.py +++ /dev/null @@ -1,157 +0,0 @@ -#!/usr/bin/env python - -from gnuradio import gr -from gnuradio import blocks -import argparse -from volk_test_funcs import * - -try: - from gnuradio import blocks -except ImportError: - sys.stderr.write("This example requires gr-blocks.\n") - -def multiply_const_cc(N): - k = 3.3 - op = blocks.multiply_const_cc(k) - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_gr_complex, 1, 1) - return tb - -###################################################################### - -def multiply_const_ff(N): - k = 3.3 - op = blocks.multiply_const_ff(k) - tb = helper(N, op, gr.sizeof_float, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def multiply_cc(N): - op = blocks.multiply_cc(1) - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_gr_complex, 2, 1) - return tb - -###################################################################### - -def multiply_ff(N): - op = blocks.multiply_ff() - tb = helper(N, op, gr.sizeof_float, gr.sizeof_float, 2, 1) - return tb - -###################################################################### - -def add_ff(N): - op = blocks.add_ff() - tb = helper(N, op, gr.sizeof_float, gr.sizeof_float, 2, 1) - return tb - -###################################################################### - -def conjugate_cc(N): - op = blocks.conjugate_cc() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_gr_complex, 1, 1) - return tb - -###################################################################### - -def multiply_conjugate_cc(N): - try: - op = blocks.multiply_conjugate_cc() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_gr_complex, 2, 1) - return tb - - except AttributeError: - class s(gr.hier_block2): - def __init__(self): - gr.hier_block2.__init__(self, "s", - gr.io_signature(2, 2, gr.sizeof_gr_complex), - gr.io_signature(1, 1, gr.sizeof_gr_complex)) - conj = blocks.conjugate_cc() - mult = blocks.multiply_cc() - self.connect((self,0), (mult,0)) - self.connect((self,1), conj, (mult,1)) - self.connect(mult, self) - - op = s() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_gr_complex, 2, 1) - return tb - - -###################################################################### - -def run_tests(func, N, iters): - print("Running Test: {0}".format(func.__name__)) - try: - tb = func(N) - t = timeit(tb, iters) - res = format_results(func.__name__, t) - return res - except AttributeError: - print "\tCould not run test. Skipping." - return None - -def main(): - avail_tests = [multiply_const_cc, - multiply_const_ff, - multiply_cc, - multiply_ff, - add_ff, - conjugate_cc, - multiply_conjugate_cc] - - desc='Time an operation to compare with other implementations. \ - This program runs a simple GNU Radio flowgraph to test a \ - particular math function, mostly to compare the \ - Volk-optimized implementation versus a regular \ - implementation. The results are stored to an SQLite database \ - that can then be read by volk_plot.py to plot the differences.' - parser = argparse.ArgumentParser(description=desc) - parser.add_argument('-L', '--label', type=str, - required=True, default=None, - help='Label of database table [default: %(default)s]') - parser.add_argument('-D', '--database', type=str, - default="volk_results.db", - help='Database file to store data in [default: %(default)s]') - parser.add_argument('-N', '--nitems', type=float, - default=1e9, - help='Number of items per iterations [default: %(default)s]') - parser.add_argument('-I', '--iterations', type=int, - default=20, - help='Number of iterations [default: %(default)s]') - parser.add_argument('--tests', type=int, nargs='*', - choices=xrange(len(avail_tests)), - help='A list of tests to run; can be a single test or a \ - space-separated list.') - parser.add_argument('--list', action='store_true', - help='List the available tests') - parser.add_argument('--all', action='store_true', - help='Run all tests') - args = parser.parse_args() - - if(args.list): - print "Available Tests to Run:" - print "\n".join(["\t{0}: {1}".format(i,f.__name__) for i,f in enumerate(avail_tests)]) - sys.exit(0) - - N = int(args.nitems) - iters = args.iterations - label = args.label - - conn = create_connection(args.database) - new_table(conn, label) - - if args.all: - tests = xrange(len(avail_tests)) - else: - tests = args.tests - - for test in tests: - res = run_tests(avail_tests[test], N, iters) - if res is not None: - replace_results(conn, label, N, iters, res) - -if __name__ == "__main__": - try: - main() - except KeyboardInterrupt: - pass diff --git a/gnuradio-core/src/examples/volk_benchmark/volk_plot.py b/gnuradio-core/src/examples/volk_benchmark/volk_plot.py deleted file mode 100755 index 48f9922054..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/volk_plot.py +++ /dev/null @@ -1,169 +0,0 @@ -#!/usr/bin/env python - -import sys, math -import argparse -from volk_test_funcs import * - -try: - import matplotlib - import matplotlib.pyplot as plt -except ImportError: - sys.stderr.write("Could not import Matplotlib (http://matplotlib.sourceforge.net/)\n") - sys.exit(1) - -def main(): - desc='Plot Volk performance results from a SQLite database. ' + \ - 'Run one of the volk tests first (e.g, volk_math.py)' - parser = argparse.ArgumentParser(description=desc) - parser.add_argument('-D', '--database', type=str, - default='volk_results.db', - help='Database file to read data from [default: %(default)s]') - parser.add_argument('-E', '--errorbars', - action='store_true', default=False, - help='Show error bars (1 standard dev.)') - parser.add_argument('-P', '--plot', type=str, - choices=['mean', 'min', 'max'], - default='mean', - help='Set the type of plot to produce [default: %(default)s]') - parser.add_argument('-%', '--percent', type=str, - default=None, metavar="table", - help='Show percent difference to the given type [default: %(default)s]') - args = parser.parse_args() - - # Set up global plotting properties - matplotlib.rcParams['figure.subplot.bottom'] = 0.2 - matplotlib.rcParams['figure.subplot.top'] = 0.95 - matplotlib.rcParams['figure.subplot.right'] = 0.98 - matplotlib.rcParams['ytick.labelsize'] = 16 - matplotlib.rcParams['xtick.labelsize'] = 16 - matplotlib.rcParams['legend.fontsize'] = 18 - - # Get list of tables to compare - conn = create_connection(args.database) - tables = list_tables(conn) - M = len(tables) - - # Colors to distinguish each table in the bar graph - # More than 5 tables will wrap around to the start. - colors = ['b', 'r', 'g', 'm', 'k'] - - # Set up figure for plotting - f0 = plt.figure(0, facecolor='w', figsize=(14,10)) - s0 = f0.add_subplot(1,1,1) - - # Create a register of names that exist in all tables - tmp_regs = [] - for table in tables: - # Get results from the next table - res = get_results(conn, table[0]) - - tmp_regs.append(list()) - for r in res: - try: - tmp_regs[-1].index(r['kernel']) - except ValueError: - tmp_regs[-1].append(r['kernel']) - - # Get only those names that are common in all tables - name_reg = tmp_regs[0] - for t in tmp_regs[1:]: - name_reg = list(set(name_reg) & set(t)) - name_reg.sort() - - # Pull the data out for each table into a dictionary - # we can ref the table by it's name and the data associated - # with a given kernel in name_reg by it's name. - # This ensures there is no sorting issue with the data in the - # dictionary, so the kernels are plotted against each other. - table_data = dict() - for i,table in enumerate(tables): - # Get results from the next table - res = get_results(conn, table[0]) - - data = dict() - for r in res: - data[r['kernel']] = r - - table_data[table[0]] = data - - if args.percent is not None: - for i,t in enumerate(table_data): - if args.percent == t: - norm_data = [] - for name in name_reg: - if(args.plot == 'max'): - norm_data.append(table_data[t][name]['max']) - elif(args.plot == 'min'): - norm_data.append(table_data[t][name]['min']) - elif(args.plot == 'mean'): - norm_data.append(table_data[t][name]['avg']) - - - # Plot the results - x0 = xrange(len(name_reg)) - i = 0 - for t in (table_data): - ydata = [] - stds = [] - for name in name_reg: - stds.append(math.sqrt(table_data[t][name]['var'])) - if(args.plot == 'max'): - ydata.append(table_data[t][name]['max']) - elif(args.plot == 'min'): - ydata.append(table_data[t][name]['min']) - elif(args.plot == 'mean'): - ydata.append(table_data[t][name]['avg']) - - if args.percent is not None: - ydata = [-100*(y-n)/y for y,n in zip(ydata,norm_data)] - if(args.percent != t): - # makes x values for this data set placement - # width of bars depends on number of comparisons - wdth = 0.80/(M-1) - x1 = [x + i*wdth for x in x0] - i += 1 - - s0.bar(x1, ydata, width=wdth, - color=colors[(i-1)%M], label=t, - edgecolor='k', linewidth=2) - - else: - # makes x values for this data set placement - # width of bars depends on number of comparisons - wdth = 0.80/M - x1 = [x + i*wdth for x in x0] - i += 1 - - if(args.errorbars is False): - s0.bar(x1, ydata, width=wdth, - color=colors[(i-1)%M], label=t, - edgecolor='k', linewidth=2) - else: - s0.bar(x1, ydata, width=wdth, - yerr=stds, - color=colors[i%M], label=t, - edgecolor='k', linewidth=2, - error_kw={"ecolor": 'k', "capsize":5, - "linewidth":2}) - - nitems = res[0]['nitems'] - if args.percent is None: - s0.set_ylabel("Processing time (sec) [{0:G} items]".format(nitems), - fontsize=22, fontweight='bold', - horizontalalignment='center') - else: - s0.set_ylabel("% Improvement over {0} [{1:G} items]".format( - args.percent, nitems), - fontsize=22, fontweight='bold') - - s0.legend() - s0.set_xticks(x0) - s0.set_xticklabels(name_reg) - for label in s0.xaxis.get_ticklabels(): - label.set_rotation(45) - label.set_fontsize(16) - - plt.show() - -if __name__ == "__main__": - main() diff --git a/gnuradio-core/src/examples/volk_benchmark/volk_test_funcs.py b/gnuradio-core/src/examples/volk_benchmark/volk_test_funcs.py deleted file mode 100644 index 0f2c84100a..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/volk_test_funcs.py +++ /dev/null @@ -1,172 +0,0 @@ -#!/usr/bin/env python - -from gnuradio import gr -from gnuradio import blocks -import math, sys, os, time - -try: - import scipy -except ImportError: - sys.stderr.write("Unable to import Scipy (www.scipy.org)\n") - sys.exit(1) - -try: - import sqlite3 -except ImportError: - sys.stderr.write("Unable to import sqlite3: requires Python 2.5\n") - sys.exit(1) - -def execute(conn, cmd): - ''' - Executes the command cmd to the database opened in connection conn. - ''' - c = conn.cursor() - c.execute(cmd) - conn.commit() - c.close() - -def create_connection(database): - ''' - Returns a connection object to the SQLite database. - ''' - return sqlite3.connect(database) - -def new_table(conn, tablename): - ''' - Create a new table for results. - All results are in the form: [kernel | nitems | iters | avg. time | variance | max time | min time ] - Each table is meant as a different setting (e.g., volk_aligned, volk_unaligned, etc.) - ''' - cols = "kernel text, nitems int, iters int, avg real, var real, max real, min real" - cmd = "create table if not exists {0} ({1})".format( - tablename, cols) - execute(conn, cmd) - -def replace_results(conn, tablename, nitems, iters, res): - ''' - Inserts or replaces the results 'res' dictionary values into the table. - This deletes all old entries of the kernel in this table. - ''' - cmd = "DELETE FROM {0} where kernel='{1}'".format(tablename, res["kernel"]) - execute(conn, cmd) - insert_results(conn, tablename, nitems, iters, res) - -def insert_results(conn, tablename, nitems, iters, res): - ''' - Inserts the results dictionary values into the table. - ''' - cols = "kernel, nitems, iters, avg, var, max, min" - cmd = "INSERT INTO {0} ({1}) VALUES ('{2}', {3}, {4}, {5}, {6}, {7}, {8})".format( - tablename, cols, res["kernel"], nitems, iters, - res["avg"], res["var"], res["max"], res["min"]) - execute(conn, cmd) - -def list_tables(conn): - ''' - Returns a list of all tables in the database. - ''' - cmd = "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name" - c = conn.cursor() - c.execute(cmd) - t = c.fetchall() - c.close() - - return t - -def get_results(conn, tablename): - ''' - Gets all results in tablename. - ''' - cmd = "SELECT * FROM {0}".format(tablename) - c = conn.cursor() - c.execute(cmd) - fetched = c.fetchall() - c.close() - - res = list() - for f in fetched: - r = dict() - r['kernel'] = f[0] - r['nitems'] = f[1] - r['iters'] = f[2] - r['avg'] = f[3] - r['var'] = f[4] - r['min'] = f[5] - r['max'] = f[6] - res.append(r) - - return res - - -class helper(gr.top_block): - ''' - Helper function to run the tests. The parameters are: - N: number of items to process (int) - op: The GR block/hier_block to test - isizeof: the sizeof the input type - osizeof: the sizeof the output type - nsrcs: number of inputs to the op - nsnks: number of outputs of the op - - This function can only handle blocks where all inputs are the same - datatype and all outputs are the same data type - ''' - def __init__(self, N, op, - isizeof=gr.sizeof_gr_complex, - osizeof=gr.sizeof_gr_complex, - nsrcs=1, nsnks=1): - gr.top_block.__init__(self, "helper") - - self.op = op - self.srcs = [] - self.snks = [] - self.head = blocks.head(isizeof, N) - - for n in xrange(nsrcs): - self.srcs.append(blocks.null_source(isizeof)) - - for n in xrange(nsnks): - self.snks.append(blocks.null_sink(osizeof)) - - self.connect(self.srcs[0], self.head, (self.op,0)) - - for n in xrange(1, nsrcs): - self.connect(self.srcs[n], (self.op,n)) - - for n in xrange(nsnks): - self.connect((self.op,n), self.snks[n]) - -def timeit(tb, iterations): - ''' - Given a top block, this function times it for a number of - iterations and stores the time in a list that is returned. - ''' - r = gr.enable_realtime_scheduling() - if r != gr.RT_OK: - print "Warning: failed to enable realtime scheduling" - - times = [] - for i in xrange(iterations): - start_time = time.time() - tb.run() - end_time = time.time() - tb.head.reset() - - times.append(end_time - start_time) - - return times - -def format_results(kernel, times): - ''' - Convinience function to convert the results of the timeit function - into a dictionary. - ''' - res = dict() - res["kernel"] = kernel - res["avg"] = scipy.mean(times) - res["var"] = scipy.var(times) - res["max"] = max(times) - res["min"] = min(times) - return res - - diff --git a/gnuradio-core/src/examples/volk_benchmark/volk_types.py b/gnuradio-core/src/examples/volk_benchmark/volk_types.py deleted file mode 100755 index e8db14aff7..0000000000 --- a/gnuradio-core/src/examples/volk_benchmark/volk_types.py +++ /dev/null @@ -1,169 +0,0 @@ -#!/usr/bin/env python - -from gnuradio import gr -from gnuradio import blocks -import argparse -from volk_test_funcs import * - -###################################################################### - -def float_to_char(N): - op = blocks.float_to_char() - tb = helper(N, op, gr.sizeof_float, gr.sizeof_char, 1, 1) - return tb - -###################################################################### - -def float_to_int(N): - op = blocks.float_to_int() - tb = helper(N, op, gr.sizeof_float, gr.sizeof_int, 1, 1) - return tb - -###################################################################### - -def float_to_short(N): - op = blocks.float_to_short() - tb = helper(N, op, gr.sizeof_float, gr.sizeof_short, 1, 1) - return tb - -###################################################################### - -def short_to_float(N): - op = blocks.short_to_float() - tb = helper(N, op, gr.sizeof_short, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def short_to_char(N): - op = blocks.short_to_char() - tb = helper(N, op, gr.sizeof_short, gr.sizeof_char, 1, 1) - return tb - -###################################################################### - -def int_to_float(N): - op = blocks.int_to_float() - tb = helper(N, op, gr.sizeof_int, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def complex_to_float(N): - op = blocks.complex_to_float() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_float, 1, 2) - return tb - -###################################################################### - -def complex_to_real(N): - op = blocks.complex_to_real() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def complex_to_imag(N): - op = blocks.complex_to_imag() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def complex_to_mag(N): - op = blocks.complex_to_mag() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - -def complex_to_mag_squared(N): - op = blocks.complex_to_mag_squared() - tb = helper(N, op, gr.sizeof_gr_complex, gr.sizeof_float, 1, 1) - return tb - -###################################################################### - - -def run_tests(func, N, iters): - print("Running Test: {0}".format(func.__name__)) - try: - tb = func(N) - t = timeit(tb, iters) - res = format_results(func.__name__, t) - return res - except AttributeError: - print "\tCould not run test. Skipping." - return None - -def main(): - avail_tests = [float_to_char, - float_to_int, - float_to_short, - short_to_float, - short_to_char, - char_to_short, - char_to_float, - int_to_float, - complex_to_float, - complex_to_real, - complex_to_imag, - complex_to_mag, - complex_to_mag_squared] - - desc='Time an operation to compare with other implementations. \ - This program runs a simple GNU Radio flowgraph to test a \ - particular math function, mostly to compare the \ - Volk-optimized implementation versus a regular \ - implementation. The results are stored to an SQLite database \ - that can then be read by volk_plot.py to plot the differences.' - parser = argparse.ArgumentParser(description=desc) - parser.add_argument('-L', '--label', type=str, - required=True, default=None, - help='Label of database table [default: %(default)s]') - parser.add_argument('-D', '--database', type=str, - default="volk_results.db", - help='Database file to store data in [default: %(default)s]') - parser.add_argument('-N', '--nitems', type=float, - default=1e9, - help='Number of items per iterations [default: %(default)s]') - parser.add_argument('-I', '--iterations', type=int, - default=20, - help='Number of iterations [default: %(default)s]') - parser.add_argument('--tests', type=int, nargs='*', - choices=xrange(len(avail_tests)), - help='A list of tests to run; can be a single test or a \ - space-separated list.') - parser.add_argument('--list', action='store_true', - help='List the available tests') - parser.add_argument('--all', action='store_true', - help='Run all tests') - args = parser.parse_args() - - if(args.list): - print "Available Tests to Run:" - print "\n".join(["\t{0}: {1}".format(i,f.__name__) for i,f in enumerate(avail_tests)]) - sys.exit(0) - - N = int(args.nitems) - iters = args.iterations - label = args.label - - conn = create_connection(args.database) - new_table(conn, label) - - if args.all: - tests = xrange(len(avail_tests)) - else: - tests = args.tests - - for test in tests: - res = run_tests(avail_tests[test], N, iters) - if res is not None: - replace_results(conn, label, N, iters, res) - -if __name__ == "__main__": - try: - main() - except KeyboardInterrupt: - pass |