I just noticed I can answer two different threads on the same message, so
I've taken the liberty to change the subject line. For those who don't care
about simulation or software/hardware issues, this article will be
meaningless and you may skip it.
On 26 May 97 at 16:16, Marc Roussel wrote:
>> [...]
> System size can become a problem if the system under study is badly
> behaved. What do I mean by badly behaved?
>> 1. The system is stiff. [...] However, systems which are
> large and have more than three or four distinct
> timescales (common in chemical systems of moderate size)
> can eat up a lot of CPU cycles.
> 2. Variables need to be accessed randomly from a large array.
> [...] The memory cache is constantly being missed and CPU
> cycles are wasted waiting for appropriate data to be sucked in.
> It seems to me that large metabolic models are likely
> to fall into this category (especially if the equations
> are generated automatically by a computer from a database)
> unless some special effort is made to order the ODEs to
> minimize this problem.
Marc, your comments are quite correct. The only technical problem with
simulating large systems of ODEs (systems with many chemical species for
those less numerically inclined) is speed and possibly memory size. As you
say speed is no problem. Hardware is still doubling performance every 18
months we already have pretty fast hardware being sold as "base systems"
(eg Pentium Pro). So I don't really consider this an issue. Anyone
interested in simulating a large (bio)chemical system need to invest in
fast hardware. The old 486 33Mhz will no longer do for this :)
However I think that the problem of assigning values to the parameters is
the biggest problem to overcome in such models. It may even be that it is
impossible to build large reallistic models (but I do have some hope).
> There are some other hardware and software issues. One of the
> reasons that I use Unix workstations for my work is that this kind of
> machine generally delivers much better floating-point performance than
> Intel hardware.
The point is correct but you need not invoke unix. I'm writing this message
on a DEC Alpha XL 266Mhz running Windows NT 4.0. This is very important to
me: I need a fast machine for the reasons given above and I also need one
where I can develop software "for the masses" (Herbert I'm getting to
your point soon, just wait a few more lines). The DEC Alpha running NT is
the ideal combination. Note that you can run NT on any of the current
Alphas, this includes the AlphaStation 500 (500Mhz) and the forthcoming
633Mhz ones. These are the faster hardware platforms available before
going to the level of supercomputers (HP, Sun and SGI have nothing to
match this price/performance). Having said this, the Pentium Pros are not
exactly slow. The 200 Mhz has a performance equivalent to the DEC I use
(though this Alpha processor is OLD and the PPro is not - tough on you
Intel!)
--
Hardware platforms that most people use.
Herbert, as you know the latest release of Gepasi is 32-bit only (ie Win95
or WinNT). Since it has been released I have only had one query asking me
if there was a version that ran under OS/2. Nobody asked for Win3.1
versions yet. However I there are still many people that only have access
to computers with limited memory and therefore need Win3.1 software.
Though I suspect that their number is declining (soon they won't be able to
buy any software for their machines).
If you want to cover every Windows user, then go ahead and do a Win3.1
application. It won't hurt those who use 32-bit Windows. You'll be the one
who'll suffer the most writing the program with those horrible memory
segmentation problems :( The second best thing in terms of coverage is
probably to write a 32-bit application that is compatible with Win32s, so
that those with Win3.1 can still run it. Personally I think this is not
very good (win32s is buggy and it does not support multi-threading).
But as Marc Roussel wrote:
> Another option is to buy a cross-platform development toolkit.
> However, that might be fairly costly.
This need not be the case. There is an excellent FREE kit that does this.
You can build applications that can be compiled on any of Win 3.1, Win95 &
NT, Mac, unix Motif, linux, etc. This kit is called wxWin and you can get
it at http://web.ukonline.co.uk/julian.smart/wxwin/
It does require your code to be in C++ though.
Gepasi 4 (yes version 4 is planned already, but there will be a 3.1 before
that) will probably be done using this kit so that I can supply versions
for the Mac and also unix.
I hope this helps,
Pedro
Pedro Mendes Inst. Biological Sciences
prm at aber.ac.uk (home: pedro at enzyme.demon.co.uk) Univ. Wales, Aberystwyth,
http://gepasi.dbs.aber.ac.uk/pedro/prmhome.htm Ceredigion SY23 3DA, U.K.
http://gepasi.dbs.aber.ac.uk/softw/gepasi.html FAX: +44 (0)1970 622350