All Posts by Date or last 15, 30, 90 or 180 days.
also by Lloyd: diglloyd.com photography and WindInMyFace.com
Thank you for purchasing through links and ads on this site.
OWC / MacSales.com...
diglloyd Deal Finder...
Buy other stuff at Amazon.com...
Upgrade the memory of your 2018 Mac mini up to 64GB
Handpicked deals...
$1299 $899
SAVE $400

$1499 $999
SAVE $500

$1499 $1019
SAVE $480

$1799 $1379
SAVE $420

$3698 $2998
SAVE $700

$2397 $1897
SAVE $500

$1199 $898
SAVE $301

$1299 $1169
SAVE $130

$4499 $3999
SAVE $500

$1399 $1099
SAVE $300

$1499 $1299
SAVE $200

$4499 $3149
SAVE $1350

$2299 $1599
SAVE $700

$1799 $1379
SAVE $420

$2998 $2498
SAVE $500

$2199 $1999
SAVE $200

$430 $220
SAVE $210

$3399 $2199
SAVE $1200

$6299 $3599
SAVE $2700

$398 $278
SAVE $120

$1499 $1019
SAVE $480

$1279 $719
SAVE $560

$1699 $1549
SAVE $150

Performance Tip for diglloydTools IntegrityChecker, java version

Apple macOS keeps changing. When I last tuned diglloydTools IntegrityChecker java ("icj"), certain parameters provided the fastest performance. Those parameters as of 10.13.6 and 10.14 now result in a substantial performance loss.

The native version of IntegityChecker ("ic" of the GUI that drives it) are not affected.

Recommended JDK for use with diglloydTools IntegrityChecker is Java 11, or OpenJDK 11.0.2.

The download page is not yet updated, but it is simple to make the performance change;

1. Open /Applications/diglloydTools/icj in any plain-text editor (e.g., TextEdit).

2. Look for the line with PERF_PARAMS. It will look something like this; change IO_BUFFERS_PER_THREAD to 2 and change IO_BUFFER_SIZE to 1024, as shown:

export PERF_PARAMS="-DNUM_THREADS=0 -DIO_BUFFERS_PER_THREAD=2 -DIO_BUFFER_SIZE=1024 -DSMALL_FILE_SIZE_CUTOFF=1 $ENCODING_TEST $ENCODING"

These parameters can be experimented with, but as of February 2019, they provide the best performance no both single hard drives and fast SSDs.

UPDATE March 5: behavior is very strange. On a fast SSD, I’m able to nearly double the speed by using 16 I/O buffers per thread, as follows:

export PERF_PARAMS="-DNUM_THREADS=0 -DIO_BUFFERS_PER_THREAD=16 -DIO_BUFFER_SIZE=1024 -DSMALL_FILE_SIZE_CUTOFF=1 $ENCODING_TEST $ENCODING"

Make sure that the number of virtual CPU cores X the number of memory buffers X memory buffer size is not too large. But even 8 threads using 16 buffers 1MB each is only 128MB.

I have long experience in performance tuning, but I cannot make sense of the behavior. I suspect that macOS has some squirrely memory management issues.

Testing

Here is how to run a test to check performance (make a change and re-test) each time, where "folderToVerify" is a test folder:

sudo purge; icj verify folderToVerify

View all handpicked deals...

Apple 21.5" iMac with Retina 4K Display (Mid 2017)
$1499 $999
SAVE $500

diglloyd.com | Terms of Use | PRIVACY POLICY
Contact | About Lloyd Chambers | Consulting | Photo Tours
Mailing Lists | RSS Feeds | Twitter
Copyright © 2019 diglloyd Inc, all rights reserved.
Display info: __RETINA_INFO_STATUS__