Here are the links:
Paper : article
Yes it could be easily parallelized by using several threads because it is a depth-first search algorithm. In a depth-first search, each branch of the search space can be explored in parallel.
How to further improve it ? Good question. Some additional optimizations may certainly be done on the bit vector representation to compress the bit vectors if there are many zeros for example. Also other new strategies could be created to optimize it further. But it requires to think about it for a while to find some good optimizations. If there was something trivial to optimize, I would probably have already done it.
By the way, you may also look at the CM-SPADE algorithm which is usually faster than CM-SPAM.
Edited 1 time(s). Last edit at 05/22/2014 05:52PM by webmasterphilfv.