On the iPhoto Apple boards, someone has currently figured out that the relative speed (or not) of your iPhoto when otherwise there's enough RAM/HD space etc, depends on the size of your iPhoto.library file within your iPhoto library since this is what iPhoto uses when it loads the images and writes to when it closes.
Mine is only about 40MB (from memory) and my iPhoto (with 8000 images) opens/closes within seconds (on a 1.25Ghz Powerbook). Some of those on the discussion boards were reporting sizes of 200MB+ and subsequently very long opening times.
From further research that one of the regulars, Eric Lindsay, has posted, it appears that it has to do with certain makes of cameras and the size of their MakerNotes. On most cameras, these makernotes are between 1-4K, on certain models of Nikon, Casios and Pentax, they seem to be coming in at closer to 40K. Add an extra 36K of info per photo and you can start to see where the silly iphoto.library sizes are coming from.
Unfortunately at the moment, there doesn't seem to be a fix for this once the images are in the library since the Makernote data doesn't seem to be changeable once it's in the Library folder. There is a PERL script that you can run on images before you import them to the library which will reduce that Makernote size. Or, if you haven't done vast amounts of work in keywording/organising them all, you could export, run the script and re-import again.
If the extent of your endeavours in iPhoto is commenting and renaming then exporting and re-importing might not be so bad. You can export them with your iPhoto name (and hence re-import them with the same one) and there's an Automator script floating around that allows you to add your iPhoto comments to the Spotlight comments for a file.