From my limited experience I would firstly try and see how fast the memory/infinity fabric can go. I started going from the 'default' (think it was either 1200 or 1600MHz) upwards by 100MHz until I reached 1800MHz (3600MHz effective) for RAM and Infinity Fabric (FCLK), to maintain 1:1 ratio (if you break the 1:1, you get penalised in latency). In between all these I would run Cinebench and 3D Mark CPU to ensure some stability and check if I'm progressing performance wise. At some 'checkpoints' where I thought the likelihood of stability might be decreased I ran some blender benchmarks for about 30 minutes, to stress the CPU (I have the 8Pack 3600MHz C16 32GB RAM, so was rather confident of its ability to overclock; not so much for the CPU, hence why I focused on CPU benchmarks).
I then started going up by 33MHz, 1833-1866-1900MHz, again running some benchmarks in between. Voltage wise, I went for 1.45V, as that's the rated memory voltage. At 1933MHz the PC wouldn't boot, so reverted back to 1900MHz.
I then started playing with timings, using what others have suggested (1usmus DRAM calculator). In my case, I haven't managed to alter the timings much more without experiencing non-boot. I am running at 1900MHz/3800MHz with 16-16-16-38, which isn't too bad. My 1usmus score is 235, which is above the 200 figure I've seen people striving for, so perhaps I should go back and try tighter timings with lower speed and see if that affects things.