Measure the disk performance locally to determine if the 55-60MB/sec you're seeing is the disk and/or the network.
You can test local speeds with 'time' and 'dd':
you@server$ time dd if=/dev/zero of=file.1 bs=4k count=10M
That should write a 40GB file and tell you how long it took. It's important to write out a file larger than the available RAM, usually about twice the size if possible. This is to avoid any potential caching effect. Use whatever combination of blocksize makes sense for your stripe size and fs block size.
Then, read the file back in to test read speed:
you@server$ time dd if=file.1 of=/dev/null bs=4k
If local performance is faster than the 55-60MB/sec you're seeing over CIFS from a remote host then look into the network (including both hosts, you can use iperf for this). If the local performance is what's capping at 55-60B/sec, you're going to need to provide more details regarding the hardware specs and configuration.