{"id":615,"date":"2009-11-12T08:24:10","date_gmt":"2009-11-11T20:24:10","guid":{"rendered":"https:\/\/www.deltics.co.nz\/blog\/?p=615"},"modified":"2009-11-12T08:24:10","modified_gmt":"2009-11-11T20:24:10","slug":"wringing-yet-more-speed-from-midas-dll","status":"publish","type":"post","link":"https:\/\/www.deltics.co.nz\/blog\/posts\/615\/","title":{"rendered":"Wringing Yet More Speed from MIDAS.DLL"},"content":{"rendered":"<span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">[Estimated Reading Time: <\/span> <span class=\"rt-time\">&lt; 1<\/span> <span class=\"rt-label rt-postfix\">minutes]<\/span><\/span><p>Cameron Hart at <a href=\"http:\/\/www.flowsoftware.co.nz\">Flow Software<\/a> has just <a href=\"http:\/\/flouen.wordpress.com\/2009\/11\/11\/delphi-midas-slow-with-memo-blob\/\">blogged about a change he identified in MIDAS.DLL<\/a> to significantly improve the performance (and capacity) of client data sets when handling large volumes of records and BLOB fields. \u00a0Basically he seems to have taken the work previously done by Andreas Hausladen and applied it to BLOB&#8217;s.<\/p>\n<p><!--more-->The performance improvements were hugely significant, but Cameron is quite open about the fact that he&#8217;s primarily a Delphi developer, and so is interested in any comments or observations from those perhaps more familiar with C\/C++ and especially anyone more intimately familiar with the inner workings of the MIDAS.DLL that might be able to spot any issues in his changes that perhaps aren&#8217;t apparent to him.<\/p>\n<p>He&#8217;s published the changes he made on the blog post. \u00a0The formatting of the code isn&#8217;t great thanks to using a hosted installation of WordPress which presumably doesn&#8217;t allow syntax highlighting plugins to be installed, so you might want to copy\/paste his code into a more C\/C++ friendly editor for detailed perusal.<\/p>\n<p>In the interests of full disclosure I should mention that Flow Software is my &#8220;Daily Planet&#8221;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">[Estimated Reading Time: <\/span> <span class=\"rt-time\">&lt; 1<\/span> <span class=\"rt-label rt-postfix\">minutes]<\/span><\/span> Cameron Hart at Flow Software has just blogged about a change he identified in MIDAS.DLL to significantly improve the performance (and capacity) of client data sets when handling large volumes of records and BLOB fields. \u00a0Basically he seems to have taken the work previously done by Andreas Hausladen and applied it to BLOB&#8217;s.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":[]},"categories":[4],"tags":[97,292,96],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1TKYv-9V","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":338,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/338\/","url_meta":{"origin":615,"position":0},"title":"Delphi 2009 &#8211; A Heads-Up for Low-Level Coders","date":"13 Sep 2008","format":false,"excerpt":"Prompted by a conversation with some colleagues where-in we collectively speculated about the implementation details of a generic class and what impact - if any - this might have on performance vs a \"traditional\" polymorphic equivalent, I threw together a quick performance test case in my Smoketest framework, and as\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2624,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/2624\/","url_meta":{"origin":615,"position":1},"title":"Expressive If and Case &#8230;","date":"25 Apr 2017","format":false,"excerpt":"A quick post on a small but hugely useful little language feature in Oxygene... if expressions. Many people will be familiar with the so-called ternary operator. Delphi developers will also be aware that there is no direct equivalent in Delphi. In 'C' and other languages we can write a statement\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":349,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/349\/","url_meta":{"origin":615,"position":2},"title":"Delphi 2009 &#8211; String Performance","date":"18 Sep 2008","format":false,"excerpt":"NOTE: Downloads are now fixed! Andreas Hausladen generously took the time to make some detailed comments on my previous post, one of which prompted me to throw together some further performance test cases for String types specifically.\u00a0 The results were something of a mixed bag and contained some surprises. The\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.deltics.co.nz\/blog\/wp-content\/uploads\/delphi2009-stringperformance-resultscapture.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1224,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/1224\/","url_meta":{"origin":615,"position":3},"title":"Sugary Goodness in &#8220;Nougat&#8221;","date":"13 Sep 2012","format":false,"excerpt":"Continuing the theme of recent - and upcoming - posts about new (and not so new) syntax in modern (and not so modern) variations on the Pascal language, I just have to comment on what I regard as yet another stunningly good job that the guys at RemObjects have done\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":626,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/626\/","url_meta":{"origin":615,"position":4},"title":"UK Examination Board says: Teach Delphi, not C#","date":"13 May 2010","format":false,"excerpt":"OK, so perhaps not exactly what they said but they have said that C# (as well as C and PHP) are not to be taught as part of A-Level Computer Science any more, and they have recommended using Pascal\/Delphi (from a list of other languages including Java, Python and VisualBASIC).\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2552,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/2552\/","url_meta":{"origin":615,"position":5},"title":"Musings on TIOBE","date":"14 Feb 2017","format":false,"excerpt":"It seems like only 12 months ago that a lot of fuss was being made about Delphi re-entering the TIOBE Index Top 10 and now it's done it again! Um... hang on... To enter the Top 10 again doesn't that mean that somewhere along the way it must have dropped\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.deltics.co.nz\/blog\/wp-content\/uploads\/tiobe-volatilezone.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/615"}],"collection":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/comments?post=615"}],"version-history":[{"count":2,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/615\/revisions"}],"predecessor-version":[{"id":617,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/615\/revisions\/617"}],"wp:attachment":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/media?parent=615"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/categories?post=615"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/tags?post=615"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}