[Quote]1. Moving mdf,ldf,tempdb to seperate drives.[/quote]
Yes, you want to do that anyhow but yes, do that.
2. Create 2 server one for transactions and one for reporting ,replicating data to second server through always on or replication mechanism.
Yes, this will help tremendously. As a general rule it's best to separate your OLTP and reporting. Plus, with a reporting server you can index the heck out of it and do a lot of other things that you don't want to do on your OLTP system.
-- Alan Burstein
Helpful links:Best practices for getting help on SQLServerCentral -- Jeff ModenHow to Post Performance Problems -- Gail ShawNasty fast set-based string manipulation functions:For splitting strings try DelimitedSplit8K or DelimitedSplit8K_LEAD (SQL Server 2012+)To split strings based on patterns try PatternSplitCMNeed to clean or transform a string? try NGrams, PatExclude8K, PatReplace8K, DigitsOnlyEE, or Translate8KI cant stress enough the importance of switching from a sequential files mindset to set-based thinking. After you make the switch, you can spend your time tuning and optimizing your queries instead of maintaining lengthy, poor-performing code. -- Itzik Ben-Gan 2001