mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
6a5d4b6b80
Added more status to the MyISAM files to avoid checking files that has already been checked. Docs/manual.texi: Turn off RCS flag BitKeeper/deleted/.del-ATIS-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-RUN-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-alter-table-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-big-tables-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-connect-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-create-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-insert-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-select-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-wisconsin-pg-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-ATIS-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-RUN-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-alter-table-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-big-tables-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-connect-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-create-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-insert-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-select-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-wisconsin-pg_fast-Linux_2.2.14_5.0_i686: ***MISSING WEAVE*** BitKeeper/deleted/.del-ATIS-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-RUN-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-alter-table-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-big-tables-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-connect-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-create-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-insert-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-select-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-wisconsin-pg_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-ATIS-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-ATIS-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-RUN-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-RUN-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-alter-table-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-alter-table-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-big-tables-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-big-tables-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-connect-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-connect-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-create-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-create-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-insert-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-insert-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-select-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-select-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-wisconsin-mysql-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** BitKeeper/deleted/.del-wisconsin-mysql_fast-Linux_2.2.14_5.0_i686-cmp-mysql,pg: ***MISSING WEAVE*** dbug/Makefile.am: Fix for bitkeeper extra/Makefile.am: Fix for bitkeeper heap/Makefile.am: Fix for bitkeeper isam/Makefile.am: Fix for bitkeeper merge/Makefile.am: Fix for bitkeeper myisam/ChangeLog: Added more status for the MyISAM table myisam/Makefile.am: Fix for bitkeeper myisam/mi_check.c: Added more status for the MyISAM table myisam/mi_extra.c: Added more status for the MyISAM table myisam/mi_page.c: Added more status for the MyISAM table myisam/myisamchk.c: Added more status for the MyISAM table myisammrg/Makefile.am: Fix for bitkeeper mysys/Makefile.am: Fix for bitkeeper readline/Makefile.am: Fix for bitkeeper regex/Makefile.am: Fix for bitkeeper scripts/Makefile.am: Fix for bitkeeper sql-bench/Comments/Access.crash-me: Comments for crash-me sql-bench/Comments/Adabas.crash-me: Comments for crash-me sql-bench/Comments/Empress.crash-me: Comments for crash-me sql-bench/Comments/Informix.crash-me: Comments for crash-me sql-bench/Comments/postgres.benchmark: Updated documentation sql-bench/Comments/postgres.crash-me: Comments for crash-me sql-bench/Makefile.am: Added the Comments directory sql-bench/Results/ATIS-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/ATIS-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/RUN-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/RUN-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/alter-table-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/alter-table-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/big-tables-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/big-tables-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/connect-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/connect-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/create-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/create-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/insert-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/insert-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/select-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/select-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/wisconsin-pg-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/Results/wisconsin-pg_fast-Linux_2.2.14_my_SMP_i686-cmp-mysql,pg: Version number fix sql-bench/compare-results.sh: Fix bug in --relative sql-bench/test-insert.sh: Fix for duplicate key test sql/ha_myisam.cc: Don't check checked tables sql/lex.h: Remove MAX as a reserved keyword sql/sql_yacc.yy: Remove MAX as a reserved keyword strings/Makefile.am: Fix for bitkeeper support-files/Makefile.am: Fix for bitkeeper tests/Makefile.am: Fix for bitkeeper vio/Makefile.am: Fix for bitkeeper |
||
---|---|---|
.. | ||
.cvsignore | ||
dbug.c | ||
dbug_analyze.c | ||
dbug_long.h | ||
doinstall.sh | ||
example1.c | ||
example2.c | ||
example3.c | ||
factorial.c | ||
install.sh | ||
main.c | ||
Makefile.am | ||
mklintlib.sh | ||
monty.doc | ||
qmake.cmd | ||
readme.prof | ||
sanity.c | ||
user.r | ||
vargs.h |
Hi, I'm sending you the modifications I made to your Dbug routines to allow profiling in a (relatively) machine independent fashion. I use your Dbug routines fairly extensively. Unfortunately, it's a royal pain to have to keep profiled versions of various libraries around. The modifications allow profiling without the need for this. How it works. ------------ Basically, I just added code in the dbug routines to write out a file called dbugmon.out (by default). This is an ascii file containing lines of the form: <function-name> E <time-entered> <function-name> X <time-exited> A second program (analyze) reads this file, and produces a report on standard output. Profiling is enabled through the `g' flag. It can take a list of procedure names for which profiling is enabled. By default, it profiles all procedures. The code in ``dbug.c'' opens the profile file for appending. This is in order that one can run a program several times, and get the sum total of all the times, etc. The only system dependent part that I'm aware of is the routine Clock() at the end of dbug.c. This returns the elapsed user time in milliseconds. The version which I have is for 4.3 BSD. As I don't have access to other systems, I'm not certain how this would change. An example of the report generated follows: Profile of Execution Execution times are in milliseconds Calls Time ----- ---- Times Percentage Time Spent Percentage Function Called of total in Function of total Importance ======== ====== ========== =========== ========== ========== factorial 5 83.33 30 100.00 8333 main 1 16.67 0 0.00 0 ======== ====== ========== =========== ========== Totals 6 100.00 30 100.00 As you can see, it's quite self-evident. The ``Importance'' column is a metric obtained by multiplying the percentage of the calls and the percentage of the time. Functions with higher 'importance' benefit the most from being sped up. I'm really not certain how to add support for setjmp/longjmp, or for child processes, so I've ignored that for the time being. In most of the code that I write, it isn't necessary. If you have any good ideas, feel free to add them. This has been very useful to me. If you can use it as part of your dbug distribution, please feel free to do so. Regards, Binayak Banerjee {allegra | astrovax | bpa | burdvax}!sjuvax!bbanerje bbanerje%sjuvax.sju.edu@relay.cs.net July 9, 1987