How do I interpret the log when I run DBCC TRACEON (3502, 3504, 3605, -1)
The trace flags that you have turned on will tell you what a checkpoint is doing behind the scenes.


3502: writes to the error log when a checkpoint starts and finishes
3504: writes to the error log information about what is written to disk
3605: allows trace prints to go to the error log


Refer to Paul Randall's blog post for more details on the above. Also, Fine Tuning for Optimal Performance has an excellent info - especially In Search of Spikes section.

Some really internals reading :


How It Works: When is the FlushCache message added to SQL Server Error Log?
How It Works: SQL Server Checkpoint (FlushCache) Outstanding I/O Target
SQL Server checkpoint problems


Instead of concentrating directly on checkpoint behaviour, I would suggest you to look at DMVs and Perfmon (disk related) - 


sys.dm_io_virtual_file_stats
Physical Disk Object: Avg. Disk Queue Length
Avg. Disk Sec/Read
Avg. Disk Sec/Write
Physical Disk: %Disk Time
Avg. Disk Reads/Sec
Avg. Disk Writes/Sec


You can refer to Investigating I/O bottlenecks