Check CPU usage while the program is running. Is it using close to 100% or not? If it is close to 100% then the program is CPU bound and memory usage is not the issue. How large is the dataset being analysed (number of rows and columns)? IO can be an issue for large datasets.
Also check the CPU time versus real time figures reported for PHREG in the SAS log. Again if CPU time is similar to the real time then PHREG has a CPU bottleneck. If real time is much greater than CPU time then that suggests IO is the bottleneck.