<p>I am actually developing and application that has around 15 modules, all of them using the same database.</p>

<p>I am using Apache + Mongrel, I cannot use Passenger because I am working on Windows (please forgive me for this deadly sin!)</p>

<p>Which of the following is a better approach?</p>

<ol>
<li>Deploy multiple small rails
applications using a virtual server
and a pair of mongrels for each
application.</li>
<li>Deploy only a big rails application</li>
</ol>

<p>I am worried about the number of running mongrels and the memory/cpu load.</p>

It depends on hwo many simultaneous clients you expect to have.  One mongrel, one client at a time (until Rails 2.2) since Rails isn't currently threaded.
Two is enough mongrels if you don't expect more than a few simultaneous users.  You can raise that number by using page caching to bypass mongrel for pages that don't have user-specific dynamic content.
The only way to be truly sure is to test the system.
In my experience you'll need at least 4 mongrels for a moderately active site of just a few users at a time.