Dear Phil,
I agree with you no more performance enhancement work in M2 function. I was checked and tested that what you said; It needs high memory, not CPU performance.
I'm trying to extract M2 coefficients in 102 items with 276 observations from 11 factor solution model now, it needs 5.4GB to extract them.
So, I recommend to try upgrade hardware performance to increase M2 calculate speed. I upgraded my RAM yesterday 4GB to 12GB, and I was added SSD Drive for use statistical computing only on Ubuntu Linux. Because, If RAM capacity full, Ubuntu Linux will use swap memory. SSD can make a calculation of M2 statistics stable - calculation will not crash - than using HDD.
Seongho2014년 5월 11일 일요일 오전 12시 26분 11초 UTC+9, Phil Chalmers 님의 말:
The M2 function has been updated to be a little more optimal for dichotomous and polytomous items, calling lower language routines to do some of
the more heavy lifting for loops. However, in its current state I'm satisfied with how its performance and am not too interested in further improving it or even including multicore architecture. The reason is that the M2 isn't limited by numerical calculation per say, it's limited by how much RAM is available and how well matrix operations can be managed. I've found that the routine will crash after about 100 items simply because the matrix objects become extremely large and dense. This should be consistent with other software that undoubtedly have the same issue, and was mentioned in a few of Alberto's articles on the topic. Cheers.