Conventions for formatting elapsed time?

I've got an elapsed time (to millisecond precision), and I'd like to format it for human consumption.

For example:

  • 500ms = 500ms
  • 1500ms = 1.5s
  • 90000ms = 1m30s (or 90s?)
  • 2790000ms = 46m30s

...etc.

Are there any UX guidelines for where the various breaks should be? When do I move from milliseconds to fractional seconds? From seconds to minutes?

Actually, I have two kinds of elapsed times: the first are usually of the order of seconds (something took ~4s to run); the second are of the order of tens of minutes (the total time was ~45 minutes, nothing longer than 90 minutes). Does that make a difference?

More about my specific case: the times are displayed at the end of a test run. The report displays the time for each test (usually ~200ms, sometimes ~5 seconds, rarely ~20 seconds), followed by the total elapsed time (~20 minutes).

For each test, the time is important, because it lets someone see where their effort might best be spent -- there's more value in speeding up a 20 second test than a 200ms test. The total time is useful because it tells you whether you need to spend that effort at all.

Assume UK English.