I'm 100% sure oclvanityminer is searching for patterns belonging to only a single public key at once, and this implies the multiplicative method (if I understand correctly). Still, I don't know if it is actually using that method.
There have been a lot of questions lately about additive vs. multiplicative, and how they work in oclvanitygen/oclvanityminer. I'll try to answer them.
Oclvanityminer uses the additive method:
- Generate a random partial private key
- Calculate the associated partial public key
- Add the base public key to the partial public key to get the test public key
- Generate a large batch (~1M) of sequential addresses by successively adding the generator point to the test public key, and converting the points to addresses
- If a match is found, report the partial private key plus the number of times the test public key was incremented. Otherwise, repeat the previous step
Sequential public keys in this scheme are generated by successively adding the generator point to the test public key. In the multiplicative method, we would skip adding the base public key to the test key at the start, and use the base public key as the increment instead of the generator point.
If anyone really wants to use the multiplicative method instead, it's possible to modify oclvanityminer to do this by changing maybe 5-10 lines of code. The performance difference would be negligible.
You are correct that oclvanityminer will search for addresses belonging to a single public key at a time. I'm not sure how additive vs. multiplicative makes a difference in the ability to concurrently search for patterns using different base public keys. For that matter, I'm not quite sure how to efficiently search for multiple patterns with different base public keys in the first place.