New Background Processing System in IMatch 2025

Started by Mario, November 17, 2024, 05:18:25 PM

Previous topic - Next topic

Mario

This is for the more technically inclined users. All others can ignore it.

Computers these days have 4, 8, 12 or more processor cores. Workstation PCs can even boast 24, 32 or more cores. This means they can do a lot of stuff in parallel – if software is utilized that can make use of all these cores.

IMatch has been supporting the distribution of work across multiple processor cores since the beginning (IMatch 5 and later). For example, it uses multiple processor cores when:

+ Indexing files
+ Reading metadata
+ Calculating categories
+ Performing face recognition
...

For IMatch 2025, I've redesigned and improved all these features to better utilize today's many-core PCs and notebooks, as well as high-speed modern SSDs.

IMatch 2025 beats IMatch 2023 in all disciplines when it comes to background processing performance. From indexing new files to face recognition, face matching to AI, IMatch 2025 has made significant improvements.

When running tasks in the background, IMatch monitors system resources like:

+ Available CPU
+ Available memory
+ Disk utilization

And dynamically adapts by increasing or decreasing the number of tasks it performs in the background in parallel. An upper limit set in the application preferences controls how many resources IMatch can use.

This sophisticated approach leads to better resource utilization, resulting in improved performance. In some cases, this may lead to interesting effects – like the one shown in this screen shot I just took from Windows Task Manager while processing 30K mixed files from my test suite into a new database:

Image2.jpg

My database is stored on the C: disk, which is an older SSD (fast, but way slower than the one in my one year old laptop). The image files, videos, PDF documents, and other media are stored on the E: disk, a 5TB spinning disk RAID 1 setup (disk mirror).

While the processor remains at less than 50% utilization and the C: SSD is basically idle, the E: drive is maxed out. IMatch is processing files as quickly as possible, which is limited by the speed of the E: drive. This is a good thing, actually – it means that IMatch is taking full advantage of the available system resources.

Effects like this are quite common and can be even more pronounced when images from network-attached storage (NAS) devices are being processed. NAS systems are generally a lot slower than local spinning disks or SSDs, so IMatch's performance is limited by the speed at which files can be transferred over the network.

However, for tasks that don't rely heavily on disk input/output (I/O), such as face recognition, IMatch 2025 can perform even better. Here's a screenshot from IMatch running face recognition on a large set of files:

im_2025_perf-mon.jpg

My PC has 12 physical processor cores, and with hyper-threading enabled, that's effectively 24 virtual cores available to run tasks. When running face recognition on a large dataset, IMatch 2025 is able to utilize all of these cores nearly to their full capacity - unless other software also requires significant processing resources.

This is an excellent result, demonstrating the effectiveness of the optimizations I've made for IMatch 2025. One of the many enhancements in this upcoming version.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

ChicagoGhost

I like this!
My desktop has 32 cores (64 threads). I am sure IMatch 2025 can fully utilize the available system resources.
But my laptop is slow. It has only 4 cores (8 threads). It is 9 years old. I am thinking of buying a modern one so I can process my photos easily even with the laptop.

BTW, I know you don't like to answer this kind of question. ;)
But, is 6 months enough for the 2025 version to come out?

Mario

Quote4 cores (8 threads). It is 9 years old.
Sounds you've got a good span of life of it. It should still handle web browsing and YT. And IMatch, unless your database is huge.

I've replaced by 5 year old laptop last year during Black Week with a new one. Was a massive step up!


QuoteBut, is 6 months enough for the 2025 version to come out?
I cannot answer such questions. I could break an arm and be out for a month. A tester could find a bug that takes me a months to fix. I will release IMatch 2025 when it is good and finished.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook