I am using d3.js to generate a force-directed layout of my graph consisting of 50K nodes. For anything less than 5K, the library works wonders. I am using the example straight off of the d3.js examples page by changing the reference so that it loads my json file.
Are there any tips to speed up the rendering? If there are any other alternatives, that would be good too.
I doubt you'll find any option that can render 50K nodes in a force-directed layout without slowing to a crawl - most implementations are O(n3), and I don't think D3's is any different.
If offline tools are acceptable, you might check out Gephi, a desktop-based tool that can deal with very large graphs.