<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns:MadCap="http://www.madcapsoftware.com/Schemas/MadCap.xsd" MadCap:lastBlockDepth="2" MadCap:lastHeight="120" MadCap:lastWidth="624" MadCap:disableMasterStylesheet="true" MadCap:tocPath="" MadCap:InPreviewMode="false" MadCap:RuntimeFileType="Topic" MadCap:TargetType="WebHelp" MadCap:PathToHelpSystem="../../../" MadCap:HelpSystemFileName="index.xml" MadCap:SearchType="Stem"> <head><title>IO Log File Statistics </title> <script type="text/javascript">/* <![CDATA[ */ window.onload = function(){ var pathToFlash = $('html').attr('MadCap:PathToHelpSystem') + 'Content/Resources/Code/ZeroClipboard.swf'; ZeroClipboard.setMoviePath(pathToFlash); function bindToClipBord(element,content){ var clip = new ZeroClipboard.Client(); clip.setText(content); clip.glue(element); }; if(location.protocol==='file:'){ $('.copylink-marker').remove(); } else{ $('.copylink-marker').each(function(){ var text = $(this).parent().parent().children('.prettyprint').html(); $(this).hover(function(){ bindToClipBord(this,text); }, function(){}); }); } prettyPrint(); }; /* ]]> */</script> <link href="../../Resources/Stylesheets/OnlineStyle.css" rel="stylesheet" /> <script src="../../Resources/Code/prettify.js"> </script> <script src="../../Resources/Code/lang-vb.js"> </script> <script src="../../Resources/Code/jquery.min.js"> </script> <script src="../../Resources/Code/ZeroClipboard.js"> </script> <script src="../../SkinSupport/MadCapAll.js" type="text/javascript"> </script> </head> <body> <p class="MCWebHelpFramesetLink" style="display: none;"><a href="../../../index_CSH.html#tuning/io_benchmark_tools/io_log_file_statistics.htm" style="">Open topic with navigation</a> </p> <p> <script type="text/javascript">/*<![CDATA[*/document.write('<a href="' + location.href +'">'); document.write("Direct Link"); document.write('</a>');/*]]>*/</script> </p> <p> </p> <h1>IO Log File Statistics</h1> <p>To get statistically meaningful results from the benchmark it is necessary that the I/O log file contains enough operations of each type. To get an overview on how well your I/O log file represents each operation, you can use the class LogStatistics in com.db4o.bench.logging.statistics. Given the file name of an I/O log file LogStatistics will produce an HTML file that contains a table with statistics: </p> <pre> <table border="0" cellpadding="4"> <tr> <th> </th> <th> </th> <th>Count</th> <th> </th> <th>%</th> <th> </th> <th>Bytes</th> <th> </th> <th>%</th> </tr> <tr> <td>Reads</td> <td> </td> <td align="right">664'631</td> <td> </td> <td align="right">30.64</td> <td> </td> <td align="right">52'214'278</td> <td> </td> <td align="right">70.83</td> </tr> <tr> <td>Writes</td> <td> </td> <td align="right">360'001</td> <td> </td> <td align="right">16.6</td> <td> </td> <td align="right">21'508'576</td> <td> </td> <td align="right">29.17</td> </tr> <tr> <td>Seeks</td> <td> </td> <td align="right">1'024'632</td> <td> </td> <td align="right">47.23</td> <td> </td> <td> </td> </tr> <tr> <td>Syncs</td> <td> </td> <td align="right">120'005</td> <td> </td> <td align="right">5.53</td> <td> </td> <td> </td> </tr> <tr> <td colspan="9"> </td> </tr> <tr> <td>Total</td> <td> </td> <td align="right">2'169'269</td> <td> </td> <td> </td> <td> </td> <td>73'722'854</td> <td> </td> </tr> </table> Average byte count per read: 78 Average byte count per write: 59 </pre>This is the output of LogStatistics when run with the file generated by CrudApplication with 30k objects, which is the default setting for the Ant target run.benchmark.medium. Typically sync operations are much rarer than seek operations. If you look at the source of CrudApplication you'll see that extra commit calls when deleting objects. These were inserted to to get a higher sync count in the I/O log. It's possible that you also have to "tune" your application in a similar way to get good statistics. <script type="text/javascript" src="../../SkinSupport/MadCapBodyEnd.js"></script></body> </html>