× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



David,

I have updated the program in the wiki to include more tests. The code and
some results can be found at
http://wiki.midrange.com/index.php/Parameter_passing_benchmark_test

(Got to say that the wiki is really really good. I like the fact that when
you come back the wiki fairies have been in and cleaned up your messy page
to make it look reasonable :-) )

If you call the program with no parameters (preferred for benchmark testing)
it will default to running 10,000 calls per test and will display the call
time for 100 calls (averaged from the 10,000 calls). I have also expanded
the testing to include passing 32768a variables to a 65535a parameter and
passing 65535a variables to a 32768a parameter.

If you call the program the results will display on the terminal but you can
call the program from QSHELL and redirect standard output to a file:
/qsys.lib/yourlib.lib/valueconst.pgm > /home/yourdir/valueconst.txt
The printout will then be written to your file and not the terminal. (the
program may take a few minutes to run, depending upon your model etc).

Below is an example of the screen printout you will get. It makes VERY
INTERESTING reading (well I think so). Not sure if it answers any questions
but it makes you think.

The results are on the wiki and are arranged by model (and feature code if
given).

This printout is more complete than the one I originally wrote so I
encourage anybody to take the new code and run it on their machine and
copy'n'paste the results from your screen/file to the wiki page. Also, its a
wiki - change the code if you want to add a test (or fix a bug).

Cheers

Larry Ducie


----------------------------------------------
--- ---
--- Starting test ---
--- ---
----------------------------------------------

Testing with 10000 func calls
Times given per 100 calls

++++++++++++++++++++++++++++++++++++++++++++++
Testing passing data to a 65535a parm
++++++++++++++++++++++++++++++++++++++++++++++

----------------------------------------------
Varying when passing a 1a literal
----------------------------------------------

Passing the literal _a_ for 65535a varying...
value: 152900 ms | const: 500 ms

----------------------------------------------
Varying where variable length is 65535
----------------------------------------------

Passing a 65535a varying with 100a filled...
value: 148680 ms | const: 330 ms
Passing a 65535a varying with 1000a filled...
value: 146630 ms | const: 330 ms
Passing a 65535a varying with 65535a filled...
value: 218620 ms | const: 320 ms

----------------------------------------------
Fixed-length when passing a 1a literal
----------------------------------------------

Passing the literal _a_ for 65535a...
value: 174840 ms | const: 33890 ms

----------------------------------------------
Fixed-length where variable length is 65535...
----------------------------------------------

Passing a 65535a with 100a filled...
value: 121490 ms | const: 360 ms
Passing a 65535a with 1000a filled...
value: 123410 ms | const: 330 ms
Passing a 65535a with 65535a filled...
value: 118720 ms | const: 320 ms

++++++++++++++++++++++++++++++++++++++++++++++
Testing passing 32768a variables to 65535 parm
++++++++++++++++++++++++++++++++++++++++++++++

----------------------------------------------
Varying where variable length is 32768...
----------------------------------------------

Passing a 32768a varying with 100a filled...
value: 146000 ms | const: 330 ms
Passing a 32768a varying with 1000a filled...
value: 153080 ms | const: 330 ms
Passing a 32768a varying with 32768a filled...
value: 180520 ms | const: 320 ms

----------------------------------------------
Fixed-length where variable length is 32768a..
----------------------------------------------

Passing a 32768a with 100a filled...
value: 195820 ms | const: 26630 ms
Passing a 32768a with 1000a filled...
value: 190530 ms | const: 25970 ms
Passing a 32768a with 32768a filled...
value: 197420 ms | const: 25780 ms

++++++++++++++++++++++++++++++++++++++++++++++
Testing passing 65535a variables to 32768 parm
++++++++++++++++++++++++++++++++++++++++++++++

----------------------------------------------
Varying where variable length is 65535
----------------------------------------------

Passing a 65535a varying with 100a filled...
value: 74920 ms | const: 550 ms
Passing a 65535a varying with 1000a filled...
value: 51330 ms | const: 1260 ms
Passing a 65535a varying with 65535a filled...
value: 125750 ms | const: 20170 ms

----------------------------------------------
Fixed-length where variable length is 65535...
----------------------------------------------

Passing a 65535a with 100a filled...
value: 71450 ms | const: 320 ms
Passing a 65535a with 1000a filled...
value: 80670 ms | const: 310 ms
Passing a 65535a with 65535a filled...
value: 69380 ms | const: 360 ms

----------------------------------------------
Test ended - press ENTER to close window...
----------------------------------------------


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.