MacBook Pro Getting ... Slooowwww...

My MacBook Pro has been acting rather sluggish lately. I’m getting pinwheels more often and sometimes a completely unresponsive system. I’ve monitored the CPU activity and there’s nothing unusual there. That has had me considering the disk. When the system slows down, I do tend to hear the disk softly clicking away. I had errors with the disk a month or two ago. The disk effectively disappeared and I had to boot from the OS X disk and repair it.

Since then the Disk Utility diagnositics report everything is fine, but even Jenny can tell that something is wrong. So this morning I installed smartmontools and this is what I found:

=== START OF INFORMATION SECTION ===
Device Model:     Hitachi HTS541616J9SA00
Serial Number:    SB2404SJH1TX0D
Firmware Version: SB4AC7CP
User Capacity:    160,041,885,696 bytes
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   7
ATA Standard is:  ATA/ATAPI-7 T13 1532D revision 1
Local Time is:    Wed Oct 31 09:53:17 2007 HKT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

...

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   062    Pre-fail  Always       -       0
  2 Throughput_Performance  0x0005   100   100   040    Pre-fail  Offline      -       0
  3 Spin_Up_Time            0x0007   222   222   033    Pre-fail  Always       -       1
  4 Start_Stop_Count        0x0012   099   099   000    Old_age   Always       -       2599
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   100   100   040    Pre-fail  Offline      -       0
  9 Power_On_Hours          0x0012   089   089   000    Old_age   Always       -       4883
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       817
191 G-Sense_Error_Rate      0x000a   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       146046451720
193 Load_Cycle_Count        0x0012   075   075   000    Old_age   Always       -       257869
194 Temperature_Celsius     0x0002   152   152   000    Old_age   Always       -       36 (Lifetime Min/Max 19/45)
195 Hardware_ECC_Recovered  0x000a   076   076   000    Old_age   Always       -       20709376
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       1
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0
223 Load_Retry_Count        0x000a   100   100   000    Old_age   Always       -       0

That Power-Off_Retract_Count is absurdly high, but I’m not sure what that really means. If anyone has some ideas, let me know.