home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 2
/
FFMCD02.bin
/
new
/
dev
/
misc
/
librarytimer
/
librarytimer.doc
< prev
next >
Wrap
Text File
|
1993-12-21
|
5KB
|
113 lines
LibraryTimer V1.1 Document
LibraryTimer V1.1 Copyright © 1993, Jesper Skov.
Released to the Public Domain on 03.10.93.
Not for commercial use.
Disclaimer
The author cannot be held liable for the suitability or accuracy of this
manual and the program it describes. Any damage directly or indirectly caused
by the use or misuse of this manual or the program it describes is the sole
responsibility of the user.
Copyright and Distribution
The programs and files in this distribution are freely distributable, but are
also Copyright © Jesper Skov. They may be freely distributed as long as no
more than a nominal fee is charged to cover time and copying costs. No
commercial usage is permitted without written permission from the author.
Everything in this distribution must be kept together, in original unmodified
form. This section boils down to one word: FREEWARE!
Introduction
LibraryTimer was made in an attempt to figure out what libraryfunctions take
most of the processortime in an application, and thus what functions should
deserve more attention when time-optimizing the program.
Gadget Description
"Library Selector"
LibraryList : List of libraries in memory.
Update : Update the librarylist.
Patch Library : Patch the functions in the selected library, and open the
functiontable-window.
"FunctionTable"
FunctionList :
Offset : The functionoffset in the library.
Function : Name of the function if available (see below).
Call : Number of calls made to the function.
Time clicks : Time elapsed while executing the function (see below).
Save : Save the functiontable to disk.
Update : Update the functiontable.
Clear : Clear the functiontable.
Free Library : Remove the patches and return to the Library Selector.
Different issues addressed in a very Ian Malcolmian way (chaotic, that is :-)
The timing is performed by calling ReadEClock in the timer.device before and
after the function is executed. The difference is then added to the
function's time clicks, and the call-count is increased.
Even though the patch is made in a manner so that re-entrant operation is
supported, some problems remain since it is not possible to patch the
function without changing the stackcontents. This cause some problems with
the interrupt-returning functions in exec (private calls). This is why
exec.library cannot be patched. Also any other function depending on a
special stackframe (parsing via the stack) will fail to work.
The LibraryTimer will show the name of the libraryfunctions if FD files are
supported. This feature requires FD: assigned to the path of the FD-files.
With the help of saving the functiontable, it should be possible to compare
timings of different library/function versions, though only by hand.
LibraryTimer V1.1 is not capable of doing any comparison. Remember that other
tasks may (well, actually they do) cause differences in the timings, so if
you are comparing two different versions of a function, make sure to have the
system equally loaded (i.e. don't have an archiver working in the
background.)
LibraryTimer only runs on systems with kick v2.04+ and needs
reqtools.library.
Credits must go to Jes Sørensen for giving me the idea to make this silly
little tool, Jan van den Baard for making the GadToolsBox and Nico François
for making the fabulous ReqTools library.
____
_I____I_
~ |_ _| ~
|0 0|
+------------------oOO-(__)-OOo------------------+
| |
| LibraryTimer V1.1 by Jesper Skov |
| Copyright © 1993 Jesper Skov |
| |
| Mail: Jesper Skov |
| Signalvej 9, 2tv |
| DK-9000 Aalborg |
| Denmark |
| |
| EMail: jsko93@kom.auc.dk |
| |
+------------------------------------------------+