user3145: What is the best method to generate large numbers of bitcoin addresses?
I imagine something like the following would break bitcoind in some fashion:

./bitcoind keypool=100000000


user323: The keypool flag can accomplish that, but it would certainly take a long time. At this scale you might want to look into modifying vanitygen to create such a big number of addresses using GPU. However, there are no off-the-shelf solutions for what you are aiming to do, asides using keypool flag.

user3056: If you just need the keys, but not imported into bitciond:

Generate 100M random numbers, each 256-bits long - these are your private keys.*
For each of the numbers execute the curve's ScalarBaseMult - to get X and Y.
The X (and Y) is your public key - you just need to hash and b58 encode it, to turn it into a bitcoin address.

*) You might want to check if the numbers are in a range, but it's extremely unlikely that they would not.
If you need 100M keys imported into bitcoind - well, that could be a challenge...

user1409: I ran vanitygen -k 1, which will keep creating addresses matching the pattern 1* until stopped, for approximately five seconds and it generated more than 3,000 addresses. No GPU assistance here.
So, do this:
In one Terminal tab, run vanitygen or oclvanitygen:
vanitygen -k -o addrs 1

In another Terminal tab, run this:
watch 'echo "`wc -l addrs | egrep -o "[0-9]+"` / 3" | bc'

When the number in the second terminal tab is greater than 100M, you're done! The divisor is three because the output file will contain addresses in three line sets: Pattern, Address, Private Key.
Now, find a way to automate that and you'll be golden. You can also just shuffle bits around with another program that just gets the first 100M addresses from the file you generated.

3145: <p>What is the best method to generate large numbers of bitcoin addresses?</p>

<p>I imagine something like the following would break bitcoind in some fashion:</p>

<blockquote>
  <p>./bitcoind keypool=100000000</p>
</blockquote>
 323: <p>The <code>keypool</code> flag can accomplish that, but it would certainly take a long time. At this scale you might want to look into modifying vanitygen to create such a big number of addresses using GPU. However, there are no off-the-shelf solutions for what you are aiming to do, asides using <code>keypool</code> flag.</p>
 3056: <p>If you just need the keys, but not imported into bitciond:</p>

<ol>
<li>Generate 100M random numbers, each 256-bits long - these are your private keys.*</li>
<li>For each of the numbers execute the curve's ScalarBaseMult - to get X and Y.</li>
<li>The X (and Y) is your public key - you just need to hash and b58 encode it, to turn it into a bitcoin address.</li>
</ol>

<p>*) You might want to check if the numbers are in a range, but it's extremely unlikely that they would not.</p>

<p>If you need 100M keys imported into bitcoind - well, that could be a challenge...</p>
 1409: <p>I ran <code>vanitygen -k 1</code>, which will keep creating addresses matching the pattern <strong>1*</strong> until stopped, for approximately five seconds and it generated more than 3,000 addresses. No GPU assistance here.</p>

<p>So, do this:</p>

<p>In one Terminal tab, run vanitygen or oclvanitygen:</p>

<pre><code>vanitygen -k -o addrs 1
</code></pre>

<p>In another Terminal tab, run this:</p>

<pre><code>watch 'echo "`wc -l addrs | egrep -o "[0-9]+"` / 3" | bc'
</code></pre>

<p>When the number in the second terminal tab is greater than 100M, you're done! The divisor is three because the output file will contain addresses in three line sets: Pattern, Address, Private Key.</p>

<p>Now, find a way to automate that and you'll be golden. You can also just shuffle bits around with another program that just gets the first 100M addresses from the file you generated.</p>
