Fast data logger for multiple analog pins

Yes it works on 328P Arduinos. It has been used on 1284P in addition to Mega.

I have logged two or three analog pins at 1000 Hz on a Uno and all six pins at slower rates. The maximum rate depends on your SD card.

All SD cards have occasional long write latencies. Externally, SD cards appear to have simple 512 byte write blocks.

Internally things are much more complex. Physical blocks are much larger than 512 bytes and physical blocks are mapped to logical block addresses for flash wear leveling. Flash must be erased before it can be written. This internal housekeeping can result in occasional long write times.

The SD spec allows write delays as long as 250 ms. Most consumer cards have maximum write latencies around 100 ms.

You can run the SdFat bench example to get an idea of your card's write latency. Here is an example from an 8 GB card.

Free RAM: 1027
Type is FAT32
File size 5MB
Buffer size 100 bytes
Starting write test. Please wait up to a minute
Write 192.05 KB/sec
Maximum latency: 88288 usec, Minimum Latency: 88 usec, Avg Latency: 515 usec