If you are using SQL Server 2000, you have to create new tables broken out by year, then manually move the data into those new tables. Then modify your code to search these tables.
If you are using SQL Server 2005 you can create a partitioned table, then move the data into the table.
The point of partitioning a table is to put more hardware behind a single table. If your hardware (disk drive) is not running beyond capacity then partitioning the table may not help.
I’d be curious to see how large your tables are, and what your indexes look like.
I’ve got a table which is 78 Gigs and runs very nicely. Until recently we had only 8 Gigs in the server.
If you are having performance problems I would start by looking at the indexes for tables that are having performance problems.