RSS/Atom feed Twitter
Site is read-only, email is disabled

tile cache size (was Re: The Occasional Bug List)

This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

20 of 21 messages available
Toggle history

Please log in to manage your subscriptions.

The Occasional Bug List David Neary 06 Nov 19:49
  The Occasional Bug List Nathan Carl Summers 06 Nov 20:08
   The Occasional Bug List David Neary 06 Nov 22:54
    The Occasional Bug List Lutz Müller 06 Nov 23:55
     The Occasional Bug List Guillermo S. Romero / Familia Romero 06 Nov 23:09
      The Occasional Bug List Lutz Müller 07 Nov 00:14
   The Occasional Bug List Sven Neumann 06 Nov 23:45
  The Occasional Bug List Sven Neumann 07 Nov 11:46
   The Occasional Bug List Nicolas Kaiser 07 Nov 14:21
    The Occasional Bug List Sven Neumann 07 Nov 14:27
   The Occasional Bug List Marc) (A.) (Lehmann 07 Nov 14:57
The Occasional Bug List Garry R. Osgood 07 Nov 03:23
  The Occasional Bug List David Neary 07 Nov 09:28
   The Occasional Bug List David Neary 07 Nov 10:13
20021106230555.A29209@wanad... 07 Oct 20:21
  The Occasional Bug List Lutz Müller 07 Nov 00:25
   The Occasional Bug List Nathan Carl Summers 06 Nov 23:30
    The Occasional Bug List Guillermo S. Romero / Familia Romero 06 Nov 23:55
     tile cache size (was Re: The Occasional Bug List) Rapha 07 Nov 18:56
      tile cache size (was Re: The Occasional Bug List) David Necas (Yeti) 07 Nov 20:59
       tile cache size (was Re: The Occasional Bug List) Rapha 08 Nov 10:46
David Neary
2002-11-06 19:49:19 UTC (over 21 years ago)

The Occasional Bug List

Hi all,

After several months without one, the time has come to let ye know about the nice bugs that are still in the GIMP, and need fixing. Most of these are fairly shallow bugs against 1.2, some are meatier ones against 1.3. In any case, since the GIMP is now 3rd in the "bugs open" ranks on bugzilla.gnome.org (behind gtk+ and galeon) and have recently passed nautilus, we have some bug-fixing to do.

So here goes the list - basically the format is bug # Summary
one line on possible fix (or other comment on the bug).

79897 UTF-8 validate all external strings This is one of these bugs that would be closed with time, I think

69085 gdyntext loses state when editing pre-existing text This one has been hanging around for a while, and seems like it would be fairly accessible.

35489 crop tool doesn't always change canvas size - problems with... Toggle switches are missed after some operations on big images - this one has been idle for over a year. Comments on how it might be fixed, anyone?

91941 Layer Move Independent of Layer Mask Seems to me like a fairly accessible enhancement.

68149 Canvas size freezes O.S. causing hard reboot MacOS X bug which needs reproducing and sounds serious.

67584 Segfault when operating on non-selected bezier-path Seems like this should be a shallow bug. Includes core dump.

78064 Entering large dimensions in Scale Image causes fatal error Memory issue - some things use lots of memory and crash the GIMP. Enhancement, marked critical - it's a matter of pre-calculating how big the "new" image will use, and warning the user if it goes over some threshold (say 1GB?)

81552 Memory leak with aquired images leads to a crash Needs a confirmation - could other people try this, and add whether they could reproduce or not?

10498 Marching Ants die untimely deaths This has been around for yonks - anyone want to look at it?

97187 black vertical lines when resizing Unconfirmed bug which looks like it would be easy enough to reproduce and possibly fix.

97433 Random pixel changes Weird bug - might be easy to fix, might be meaty.
70335 [tracking bug] Incorrect RGBA resampling This is a family of bugs marked "Incorrect RGBA resampling in * plug-in" - there are about 30 of these, all easily fixable as far as I can tell.

And there we go - hopefully some of these will get fixed, and we'll restore the GIMP to it's rightful place in the bugzilla list - 4th. There are lots more bugs which are possibly even easier to fix - I thought this was a nice mix between easy bugs, easy enhancements and interesting (ie hard) bugs.

It goes without saying that there are lots of Windows bugs awaiting confirmation & fixes too - more that there are Unix bugs, in fact. And there are also lots of bugs on things like Wacoms and scanners which developers with those types of hardware might consider having a look at.

Cheers,
Dave.

Nathan Carl Summers
2002-11-06 20:08:22 UTC (over 21 years ago)

The Occasional Bug List

On Wed, 6 Nov 2002, David Neary wrote:

78064 Entering large dimensions in Scale Image causes fatal error Memory issue - some things use lots of memory and crash the GIMP. Enhancement, marked critical - it's a matter of pre-calculating how big the "new" image will use, and warning the user if it goes over some threshold (say 1GB?)

I think it's safe to say that if the size of the image is bigger than the size of the tile cache, it's big enough to warn about.

Rockwalrus

David Neary
2002-11-06 22:54:23 UTC (over 21 years ago)

The Occasional Bug List

Nathan Carl Summers wrote:

On Wed, 6 Nov 2002, David Neary wrote:

78064 Entering large dimensions in Scale Image causes fatal error Memory issue - some things use lots of memory and crash the GIMP. Enhancement, marked critical - it's a matter of pre-calculating how big the "new" image will use, and warning the user if it goes over some threshold (say 1GB?)

I think it's safe to say that if the size of the image is bigger than the size of the tile cache, it's big enough to warn about.

Seems like a reasonable metric - but the default tile cache is 32M, and most people have upwards of 128M RAM these days. Maybe if we were to use this metric we should consider upping the default tile cache to at least 64M? If you're loading images from a camera with 3 megapixels, 32M is big enough to have 1 image open with 2 layers and no undo levels. Which seems a little harsh :)

Cheers, Dave.

Guillermo S. Romero / Familia Romero
2002-11-06 23:09:08 UTC (over 21 years ago)

The Occasional Bug List

lutz@users.sourceforge.net (2002-11-06 at 2355.33 +0100):

In libgphoto2, someone recently implemented reading the available memory from /proc/meminfo (if available) and act according to that. The code is at

And for OSes that do not have that, like FreeBSD 4.6? It does not take into account details like disk speed or shared systems either.

GSR

Nathan Carl Summers
2002-11-06 23:30:05 UTC (over 21 years ago)

The Occasional Bug List

On 7 Nov 2002, Lutz Müller wrote:

On Wed, 2002-11-06 at 23:05, David Neary wrote:

Looks kind of plaform-specific... how would you go about doing that for Solaris, SGI or Windows?

Alternatively, if someone hacks up a plain-C-library called libmem or similar for figuring out free memory and stuff like that on various systems, we can join the efforts in gimp and libgphoto2.

It would be a nice thing to put in glib.

Regardless, it should only be used to create a suggestion -- the tile cache size should still be determined by the user.

Rockwalrus

Sven Neumann
2002-11-06 23:45:41 UTC (over 21 years ago)

The Occasional Bug List

Hi,

Nathan Carl Summers writes:

On Wed, 6 Nov 2002, David Neary wrote:

78064 Entering large dimensions in Scale Image causes fatal error Memory issue - some things use lots of memory and crash the GIMP. Enhancement, marked critical - it's a matter of pre-calculating how big the "new" image will use, and warning the user if it goes over some threshold (say 1GB?)

I think it's safe to say that if the size of the image is bigger than the size of the tile cache, it's big enough to warn about.

remember that we already have a setting for more or less precisely that value in the prefs (max-new-image-size). I'd suggest we just use it then.

Salut, Sven

Guillermo S. Romero / Familia Romero
2002-11-06 23:55:20 UTC (over 21 years ago)

The Occasional Bug List

rock@gimp.org (2002-11-06 at 1430.05 -0800):

Regardless, it should only be used to create a suggestion -- the tile cache size should still be determined by the user.

Yes, cos it still does not cover shared machines, nor machines with peaks in other tasks, nor disk tweaking, nor "is the current situation at startup the normal situtation". And then you get complains, again.

GSR

Lutz Müller
2002-11-06 23:55:33 UTC (over 21 years ago)

The Occasional Bug List

On Wed, 2002-11-06 at 22:54, David Neary wrote:

Seems like a reasonable metric - but the default tile cache is 32M, and most people have upwards of 128M RAM these days. Maybe if we were to use this metric we should consider upping the default tile cache to at least 64M? If you're loading images from a camera with 3 megapixels, 32M is big enough to have 1 image open with 2 layers and no undo levels. Which seems a little harsh :)

In libgphoto2, someone recently implemented reading the available memory from /proc/meminfo (if available) and act according to that. The code is at

http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/gphoto/libgphoto2/libgphoto2/gphoto2-filesys.c?rev=HEAD&content-type=text/vnd.viewcvs-markup

Look for gp_get_free_memory.

Lutz

Lutz Müller
2002-11-07 00:14:13 UTC (over 21 years ago)

The Occasional Bug List

On Wed, 2002-11-06 at 23:09, Guillermo S. Romero / Familia Romero wrote:

And for OSes that do not have that, like FreeBSD 4.6? It does not take into account details like disk speed or shared systems either.

After I wrote the email, I verified. There is currently even support for *BSD. If someone wants to add a solution for Windows or other OS, he/she is certainly very welcome :-)

Lutz

Lutz Müller
2002-11-07 00:25:55 UTC (over 21 years ago)

The Occasional Bug List

On Wed, 2002-11-06 at 23:05, David Neary wrote:

Looks kind of plaform-specific... how would you go about doing that for Solaris, SGI or Windows?

Alternatively, if someone hacks up a plain-C-library called libmem or similar for figuring out free memory and stuff like that on various systems, we can join the efforts in gimp and libgphoto2.

Lutz

Garry R. Osgood
2002-11-07 03:23:32 UTC (over 21 years ago)

The Occasional Bug List

David Neary wrote:

Hi all,

10498 Marching Ants die untimely deaths This has been around for yonks - anyone want to look at it?

I look at it from time to time -- I keep track of all my beasty bug children. This depends on GTK 1.2 Bug #32617 being fixed (gdk_pointer_grab() Behaves Differently for X Input Events), and apparently that is not going to be done for the 1.2 series (See Owen Taylor's Additional Comment for this item) It has been moved to resolution in the GTK 2.0 series, but I presume, being that it is still open, (moved to milestone 2.0.3) that a corresponding fix for Gimp 1.3 is also in a dependent state.

A gimp-only fix for 1.2.3 against GTK 1.2.x -- which won't see a GTK-based solution -- is conceivable: Not 'hard', but 'tedious.' It means, at the application level (in all the tool implementations that look for a release to terminate their motion behavior -- rectangles stop rubbering, for example) to anticipate a GDK_BUTTON_PRESS event, even if you didn't ask for the bugger in your request list for gdk_pointer_grab() -- this, I believe, is the essense of Mr Taylor's "two-line fix" advise.

He was speaking figuratively. Of course.

1.3 is another matter. When XInput dust settles down o'er Gimpland, #10498 may no longer be an issue. One hopes.

Be good, be well

Garry.

David Neary
2002-11-07 09:28:18 UTC (over 21 years ago)

The Occasional Bug List

Garry R. Osgood wrote:

David Neary wrote:

Hi all,

10498 Marching Ants die untimely deaths This has been around for yonks - anyone want to look at it?

I look at it from time to time -- I keep track of all my beasty bug children. This depends on GTK 1.2 Bug #32617 being fixed (gdk_pointer_grab() Behaves Differently for X Input Events), and apparently that is not going to be done for the 1.2 series (See Owen Taylor's Additional Comment for this item)

I'd suggest adding this comment to bugzilla, and closing the bug as NOTGIMP or NOTGNOME, or whatever bugzilla status corresponds to SEP (someone else's problem).

It has been moved to resolution in the GTK 2.0 series, but I presume, being that it is still open, (moved to milestone 2.0.3) that a corresponding fix for Gimp 1.3 is also in a dependent state.

When the GTK+ bug is fixed, 1.3 will inherit the fix, I hope...

1.3 is another matter. When XInput dust settles down o'er Gimpland, #10498 may no longer be an issue. One hopes.

Indeed.

Cheers,
Dave.

David Neary
2002-11-07 10:13:12 UTC (over 21 years ago)

The Occasional Bug List

David Neary wrote:

Garry R. Osgood wrote:

I'd suggest adding this comment to bugzilla, and closing the bug as NOTGIMP or NOTGNOME, or whatever bugzilla status corresponds to SEP (someone else's problem).

Apologies - this comment (with lots more information) is already attached to the bug report. I just thought of something else - can we close this bug as a duplicate of the GTK+ bug?

Cheers, Dave.

Sven Neumann
2002-11-07 11:46:14 UTC (over 21 years ago)

The Occasional Bug List

Hi,

David Neary writes:

After several months without one, the time has come to let ye know about the nice bugs that are still in the GIMP, and need fixing. Most of these are fairly shallow bugs against 1.2, some are meatier ones against 1.3. In any case, since the GIMP is now 3rd in the "bugs open" ranks on bugzilla.gnome.org (behind gtk+ and galeon) and have recently passed nautilus, we have some bug-fixing to do.

I just found that I clicked the wrong link on bugzilla. The page I used to look at it still shows a not-so-bad picture:

http://bugzilla.gnome.org/weekly-bug-summary.cgi

However 280 open bugs (excluding enhancement requests) are still way too many. If you want to spend some time on this stuff, the bugs that have the target milestone set to 1.2.4 are especially important to look at:

ID Sev Pri State Summary

84884 nor Nor UNCO gimp-perl man pages claims wrongs statements 83362 blo Urg NEW Incompatible licenses used in the GIMP 69085 nor Hig NEW gdyntext loses state when editing pre-existing text 3340 min Nor NEW gDynText crops text 10466 nor Nor NEW I have some pb with rotation 21028 tri Nor NEW should warn user about enormous memory consumption 26072 nor Nor NEW initial_sub_region:: error :: src->w * (src->bytes 52543 nor Nor NEW bumpmap: bumpmapping off by 1 57952 min Nor NEW no scrollable scroll bars in new picture from a sel 71478 min Nor NEW Imagemap plug-in does not draw some rectangles corr 73891 nor Nor NEW bugs in the script-fus from the Alpha to Logo secti 79754 nor Nor NEW Text tool should use gdk_fontset_load() 82465 min Nor NEW CML explorer plugin incorrect for grayscale images 82671 nor Nor NEW Flattening while thresholding causes segfault 82763 nor Nor NEW xbm plugin emits malformed xbms 84145 nor Nor NEW Narrow straight lines are imprecise 86637 nor Nor NEW Small Tiles filter: apply filter + UNDO + Repeat La 87687 tri Nor NEW ImageMap should use lowercase, not uppercase tags 89274 nor Nor NEW Gradient Editor crashes when shift dragging a segme 89801 nor Nor NEW Gimp crashes when choosing a non-integer font size 92377 nor Nor NEW missing brush-dialog.png in help .. 94979 min Nor NEW Zoom is broken for very large images 83458 tri Low NEW Suggested improvement in a translated menu 58848 nor Hig ASSI Font problem
22360 nor Nor REOP nav panner race can leave the panner active but not 52866 min Nor REOP gimp-remote is not perfect 88278 maj Nor REOP Text tool fills text with strange semi-transparent

Happy Bug-Hunting, Sven

Nicolas Kaiser
2002-11-07 14:21:52 UTC (over 21 years ago)

The Occasional Bug List

* Sven Neumann :

83458 tri Low NEW Suggested improvement in a translated menu

(Sorry, I appear to be unable to add a comment to bugzilla. I simply can't find any "submit" button.)

I'm not a native speaker, but Google showed me a lot of sites that prefer "Sezione aurea" for "Golden mean" in italian, like

http://www.sectioaurea.com/ http://psycho81.supereva.it/bonacci.htm

Have a nice day, Nicolas

Sven Neumann
2002-11-07 14:27:59 UTC (over 21 years ago)

The Occasional Bug List

Hi,

Nicolas Kaiser writes:

* Sven Neumann :

83458 tri Low NEW Suggested improvement in a translated menu

(Sorry, I appear to be unable to add a comment to bugzilla. I simply can't find any "submit" button.)

you need to create an account and log in first.

I'm not a native speaker, but Google showed me a lot of sites that prefer "Sezione aurea" for "Golden mean" in italian, like

Thanks for your help on this. I have Cc'ed Daniel Medri since I'd prefer him to change the translation.

Salut, Sven

Marc) (A.) (Lehmann
2002-11-07 14:57:00 UTC (over 21 years ago)

The Occasional Bug List

On Thu, Nov 07, 2002 at 11:46:14AM +0100, Sven Neumann wrote:

However 280 open bugs (excluding enhancement requests) are still way

Could somebody with sufficient priviledges allow me to edit bug reports again (account pcg@goof.com)? ;)

Rapha
2002-11-07 18:56:33 UTC (over 21 years ago)

tile cache size (was Re: The Occasional Bug List)

On Wed, 6 Nov 2002 23:55:20 +0100, "Guillermo S. Romero / Familia Romero" wrote:

rock@gimp.org (2002-11-06 at 1430.05 -0800):

Regardless, it should only be used to create a suggestion -- the tile cache size should still be determined by the user.

Yes, cos it still does not cover shared machines, nor machines with peaks in other tasks, nor disk tweaking, nor "is the current situation at startup the normal situtation". And then you get complains, again.

This has been discussed on this list several times in the past. I do not know if there was a real consensus on what the best solution is, but here are the most important points that I have in mind:

- There is no optimal way to set the tile cache size (or the value of max-new-image-size, which can be different). This depends on too many parameters (single or multi-user machine, background tasks, configuration of the swap space, etc.). So whatever we do, it will never be a perfect solution.

- Although the user should be able to change the tile cache size at any time, the value that is suggested during the initial user installation should be improved. Any guess is probably better than the current fixed value of 32 MB.

- Since the inital value needs to be computed only once during the installation, it can be guessed by any means, including running some helper programs. This is very useful for the platforms on which a normal user does not have the privileges to get this information directly from the kernel (no /proc filesystem or no permission to access it).

- The inital guess should be tuned for a single-user machine. The majority of the users are on single-user systems. Those that are on multi-user systems will usually have a system administrator who can take care of adjusting the installation script or the global gimprc in such a way that the tile cache size is set to a lower value than what would be used for a single-user system with the same amount of memory. We know that the solution will not be perfect anyway, so we have to take care of the most common case (single-user systems).

- We need to support many operating systems (Linux, Windows, MacOS X, Solaris and many others). But if we cannot have a good way to guess the appropriate value of the tile cache size for all systems, then we should at least try to get a good guess for the systems that we can support. The other systems can still use a fixed default. Again, this is a matter of taking care of the most common case.

- A good rule of thumb for setting the tile cache size seems to be: 90% of the memory available when the GIMP is running for the first time, or total amount of memory - 64 MB, whichever is the largest. So the formula would be something like: min (32 MB, max (free * 0.9, total - 64 MB)) It should probably be rounded to the closest multiple of 10 MB or 32 MB in order to get a nice value. Anyway, this is only the initial proposed value that the user can change at any time.

Just to show that it would be impossible to guess the optimal value for the tile cache size: at work, I have a home directory that is NFS-mounted on many machines. As a result, I use the same gimprc for: - my Sparc Ultra 10 (mostly single-user) with 256 MB RAM - several Sparc Ultra 1 to Ultra 60 that have the same amount of memory or more but are shared by 5 to 10 users at any time - several i686 Linux PCs with 128 to 768 MB RAM I do not want to maintain dozens of gimprc files for each machine, so I just setted for a size (200 MB) that seems to work most of the time. I adjust it sometimes when I know that I will work for some amount of time on a machine that has more memory and is not used by anybody else. Otherwise, I just keep the default because that's good enough.

But despite the fact that it would be impossible to find the optimal value for all cases, I think that it is very important to provide a better initial value than what we currently have.

-Raphaël

David Necas (Yeti)
2002-11-07 20:59:46 UTC (over 21 years ago)

tile cache size (was Re: The Occasional Bug List)

On Thu, Nov 07, 2002 at 06:56:33PM +0100, Raphaël Quinet wrote:

- A good rule of thumb for setting the tile cache size seems to be: 90% of the memory available when the GIMP is running for the first time, or total amount of memory - 64 MB, whichever is the largest. So the formula would be something like: min (32 MB, max (free * 0.9, total - 64 MB))

Didn't you mean something more like

max (32 MB, free * 0.9, total - 64 MB) ?

The way you wrote it no one would get more than 32MB, which probably wasn't the point.

Yeti

Rapha
2002-11-08 10:46:00 UTC (over 21 years ago)

tile cache size (was Re: The Occasional Bug List)

On Thu, 7 Nov 2002 20:59:46 +0100, David Necas (Yeti) wrote:

On Thu, Nov 07, 2002 at 06:56:33PM +0100, Raphaël Quinet wrote:

- A good rule of thumb for setting the tile cache size seems to be: 90% of the memory available when the GIMP is running for the first time, or total amount of memory - 64 MB, whichever is the largest. So the formula would be something like: min (32 MB, max (free * 0.9, total - 64 MB))

Didn't you mean something more like

max (32 MB, free * 0.9, total - 64 MB) ?

The way you wrote it no one would get more than 32MB, which probably wasn't the point.

Yes, of course. I don't know what I had been thinking when I typed that. No one should get _less_ than 32 MB as the proposed value. Your formula is what I should have typed if I had thought a bit more before sending my message.

Thanks for correcting this, -Raphaël