Mike Matrigali <[EMAIL PROTECTED]> writes: > A discussion on the list would be great. Can anyone post a complete > test run with exact description of test, and flat and hierarchical > results performance monitor reports. It is interesting if info has > both number of calls and time. > > I was starting to look at: > http://wiki.apache.org/db-derby/Derby1961MethodCalls > I find it really useful to start looking top down at number of > operations per test rather than bottom up. So for instance, > some things jumped out: > o derby.iapi.services.io.ArrayInputStream.setPosition 58.4240 > At first I was expecting this to be something like 1 per row + 1 > per column. I assume it got big through btree search - hierarchical > data would show. It might be interesting to know btree overhead > vs. heap overhead. maybe btree compare can be optimized?
I have attached new files to the wiki page which show the frequency of each caller-callee pair. Seems like your assumption was correct, that most of the calls to setPosition() came from searching the B-tree. All of the calls to setPosition() came (indirectly) from BasePage.fetchFromSlot(). Of the 20.7 calls to fetchFromSlot(), 16 came from ControlRow.CompareIndexRowFromPageToKey 1.7 came from BranchControlRow.getChildPageAtSlot 1 came from B2IRowLocking3.lockRowOnPage 1 came from BTreeForwardScan.fetchRows 1 came from GenericConglomerateController.fetch All but the last method are B-tree related, right? There are three levels in the B-tree in this test. -- Knut Anders
