I should ask
why you're doing this, but let's see if we can't first at least explain what you're seeing.
When you copy something to a SSD, it first goes into the kernel's page cache (i.e. in RAM) and the kernel subsequently flushes those pages when the device isn't busy. To see the true speed of writing something to disk, try this:
> time ( dd if=/dev/zero bs=1048576 count=N of=target_filename; fsync target_filename )
Replace
N
with the number of megabytes and
target_filename
with the file name & path (in both places).
The
fsync
command will ensure all pages allocated to the file have been flushed out. The parenthesis put everything into a subshell and we time that compound statement. Now, just divide N by the amount of realtime and that's your write speed.
Try this with your ramdisk and with your real SSD for some large values like 4096 and let us know what you find.
Note that I'm trying to simplify the situation by looking just at the "write" side, since that's where SSDs tend to be weakest. We can do something analogous for reading, but let's take one step at a time.