Startup speed

David Carlson david.carlson.417 at
Fri Jun 21 22:48:22 EDT 2013

On 6/21/2013 9:04 PM, R. Victor Klassen wrote:
> I find it hard to believe that reading the data file is the bottleneck.   Unless very inefficient reads are being used.  
> Without actually looking at the code, I would assume that it is the manner in which the datafile is read and processed that is the bottleneck.    Disk I/O is much slower than memory accesses, but any modern system can read a rather large data file in a single gulp in a matter of a fraction of a second.   But parsing the file and building a data structure that uses the entire file's contents, now that's another matter.   And if the file is being read a line (or a byte) at a time, that would also be slow.
I have wondered for a long time now why XML was invented.  It seems to
be designed intentionally to have no structure, just a lot of repeated
text and slashes instead of capital letters and periods like English.
How can a one-line-at-a-time data stream be fast?  That seems like
running interpreter code instead of compiled code.  There sure is a lot
of it these days, and not just in GnuCash.

> However, I do agree that eliminating the slow startup should be a priority.
> On 2013-06-21, at 11:44 AM, Jonathan Kamens wrote:
>> Hi David,
>> That's not a dumb question at all; in fact, it's a very smart question.
>> To give my own answer (which I'm sure is only one of many possible answers), I actually need to "go up a level," hence the change in the Subject line.
>> For me, the issue isn't really archiving transactions; archiving is just a workaround for the /real/ issue, which is that GnuCash's startup time grows linearly with the number of transactions.
>> People who are saying, "Well, it only takes 30 seconds to start up for me, and that seems fine," or, "I don't have a problem waiting patiently for it to launch," are in my opinion missing the point, or more accurately missing two points.
>> First of all, let me say it again, the startup time /grows linearly with the number of transactions./ I've been using GnuCash to track my finances since 2004. I hope to live for another fifty years or so, and I hope to continue using GnuCash to track my finances for much of that time. I also hope that I will be entering more and more transactions per year into GnuCash, not less, because I hope to have more money to spend as I get older ;-). As time goes on, it's going to take longer and longer for me to launch the program, unless the linear growth problem is fixed.
Are you sure that it is linear?  it might be exponential! 
I also want my coffee brewer to work faster and I want a higher speed
limit on the roads.
If that doesn't happen I will just have to learn how to work more
efficiently within the existing constraints.

>> On 06/21/2013 10:08 AM, David Carlson wrote:
>>> Excuse me for being dumb, but what is the definition of archiving, anyway.
>>> Is it the same for GnuCash as for e-mail?
>>> Physically where is the stuff moved to and how hard is it to get it back
>>> if needed?
>>> Would I use GnuCash to look at that archived stuff?
>>> David C

David C

More information about the gnucash-user mailing list