Pages: [1]   Go Down

Author Topic: CO12 memory usage (EOS R raw memory leak)  (Read 965 times)

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
CO12 memory usage (EOS R raw memory leak)
« on: January 18, 2019, 06:10:34 pm »

CO12 seems to be much more memory hungry than CO11 ever was, so I suspect there are some memory leaks there. I just had about 350 images exported to small jpgs and ImgCoreProcess.exe ate 10GB of memory (on top of the 13GB of the main CO process). This is not right. I have to periodically restart CO while working just to free up memory. I'm on Win7 64bit
« Last Edit: January 24, 2019, 01:25:43 pm by Rado »
Logged

Bart_van_der_Wolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 7535
Re: CO12 memory usage
« Reply #1 on: January 18, 2019, 06:35:47 pm »

CO12 seems to be much more memory hungry than CO11 ever was, so I suspect there are some memory leaks there. I just had about 350 images exported to small jpgs and ImgCoreProcess.exe ate 10GB of memory (on top of the 13GB of the main CO process). This is not right. I have to periodically restart CO while working just to free up memory. I'm on Win7 64bit

Hi,

1. It's only a memory leak if the amount of used memory keeps growing with use, until you run out of memory.
2. The fact that a program uses a lot of memory is not an issue, unless you run other application at the same time that slow down due to lack of memory. Many applications make choices, between storing temporary information on disk (which traditionally is slower) or in RAM (which traditionally is faster). Some applications do frequent releases of no-longer-used memory space AKA "Garbage Collection", others wait to avoid the lost of time caused by garbage collection.
3. There are applications that monitor memory usage in the background and, as per user preference, do more or less frequent cleanups of unused memory (unless it is indeed a memory leak). For Win7, but also Win10, I use O&O Clever Cache.

Cheers,
Bart
Logged
== If you do what you did, you'll get what you got. ==

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage
« Reply #2 on: January 18, 2019, 06:48:23 pm »

Bart I've been using CO for years and it was never this bad. It usually stayed around 5-8 GB which I'm fine with. Using 23GB for working with a catalog of 350 images smells like memory leak to me (ImgCoreProcess.exe didn't release its memory after the export was done)
Logged

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage
« Reply #3 on: January 18, 2019, 07:27:49 pm »

Some measurements:

Starting CO fresh, creating a new catalog and importing 350 EOS R raws into it makes CO allocate 10GB of ram. Exporting all raws to jpegs allocates additional 10GB for ImgCoreProcess. Starting the export a second time made ImgCoreProcess increase its memory allocation to 15GB at which point I had to kill it because my system only has 32GB of ram.

Starting CO fresh, creating a new catalog and importing 700 EOS 6D raws into it makes CO allocate 2GB of ram. Exporting all raws to jpegs allocates about 0.5GB additional memory for ImgCoreProcess.

I think it's safe to assume there's a memory leak related to the EOS R files support.
Logged

Bart_van_der_Wolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 7535
Re: CO12 memory usage
« Reply #4 on: January 18, 2019, 07:30:13 pm »

Bart I've been using CO for years and it was never this bad. It usually stayed around 5-8 GB which I'm fine with. Using 23GB for working with a catalog of 350 images smells like memory leak to me (ImgCoreProcess.exe didn't release its memory after the export was done)

Maybe, maybe not.

While it would be good practice to release the memory back to the memory pool (so that other applications can immediately use it) as soon as makes sense, it only becomes a memory leak if the constantly growing amount of memory is kept occupied, even after the application closes. When it becomes unlocked after closing the application, then it starts looking more like a design choice (postponing garbage collection) than a bug (claiming memory that is never released). If it remains locked (which is hard to detect, because it may stay locked until needed for additional contiguous memory much later), it's a bug.

Personally, I'd prefer prompt unlocking of unused memory, because I tend to run multiple applications in Parallel, so having the maximum amount of free memory for each of them can matter. That's why I run "O&O Clever Cache".

Cheers,
Bart
Logged
== If you do what you did, you'll get what you got. ==

Bart_van_der_Wolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 7535
Re: CO12 memory usage
« Reply #5 on: January 18, 2019, 07:35:52 pm »

Some measurements:

Starting CO fresh, creating a new catalog and importing 350 EOS R raws into it makes CO allocate 10GB of ram. Exporting all raws to jpegs allocates additional 10GB for ImgCoreProcess. Starting the export a second time made ImgCoreProcess increase its memory allocation to 15GB at which point I had to kill it because my system only has 32GB of ram.

Starting CO fresh, creating a new catalog and importing 700 EOS 6D raws into it makes CO allocate 2GB of ram. Exporting all raws to jpegs allocates about 0.5GB additional memory for ImgCoreProcess.

I think it's safe to assume there's a memory leak related to the EOS R files support.

Okay, that's what I wanted to know. Is it locking, and not releasing, additional amounts of memory, time and time again?
If so, then that would suggest memory leaks, and it's best reported to the support crew.

I'll check with Win10, but can't verify with Win7 myself, because I've moved on.

Cheers,
Bart
Logged
== If you do what you did, you'll get what you got. ==

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage
« Reply #6 on: January 18, 2019, 07:41:09 pm »

Okay, that's what I wanted to know. Is it locking, and not releasing, additional amounts of memory, time and time again?

Yes but only when working with EOS R raws
Logged

Bart_van_der_Wolf

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 7535
Re: CO12 memory usage
« Reply #7 on: January 18, 2019, 08:11:12 pm »

Yes but only when working with EOS R raws

Which would make even more sense, since this was added recently (and was therefore also probably less rigorously tested on Win7) and is thus more likely to contain an unexpected bug on that platform. More mature code fragments tend to get more stable over time, but OS version upgrades may break other things as well.

Obviously, useful feedback for the engineers at Phase One that work on that part of the codebase.

Cheers,
Bart
Logged
== If you do what you did, you'll get what you got. ==

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage
« Reply #8 on: January 24, 2019, 01:25:08 pm »

The memory leak with EOS R raws is still there in the newly released 12.0.1 update
Logged

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage (EOS R raw memory leak)
« Reply #9 on: February 14, 2019, 08:11:59 am »

Still present in 12.0.2
Logged

David Grover / Phase One

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 1316
    • Phase One
Re: CO12 memory usage (EOS R raw memory leak)
« Reply #10 on: February 22, 2019, 03:13:51 am »

Still present in 12.0.2

Did you make a support case?
Logged
David Grover
Business Support and Development Manager, Software.

Rado

  • Full Member
  • ***
  • Offline Offline
  • Posts: 239
Re: CO12 memory usage (EOS R raw memory leak) RESOLVED
« Reply #11 on: April 09, 2019, 05:02:07 am »

This issue seems to be resolved in 12.0.3 (yes I made a support case and provided files to reproduce the problem)
Logged
Pages: [1]   Go Up