db2udbgirl, The more distinct you can make the partition keys, the fewer rows will be in each partition.
Even though you have 2 partitions instead of one table, you are still going to be doing a partition scan of about 60 million rows. An Index on the column wouldn't be used as the optimizer can tell it would have to retrieve half the rows in the table anyway. SRC_TYPE by itself isn't unique enough to break the partition down to smaller chucks.
As an example, Assume SRC_TYPE could be all 26 letters of the alphabet. Also the rows are evenly distributed across all letters (a bit of a stretch, I know), you would then have on average, 5 million rows per partition. This still won't be very fast but it should run in a little less than 1/10 the time.
Another factor is what disks you are using and where the containers are defined. If you can spread the partitions on different disks, you can improve parallel I/O. Assuming the 26 SRC_TYPE values again, if you had something like SRC_TYPE IN('A', 'Z'), and the partitions are on different disks, two parallel tasks could be started to read both partitions at the same time cutting the query time in about 1/2.