[Profiler] Improve the docstring for export_memory_timeline (#110949)

Summary: Add more details about the export_memory_timeline API, as we've landed new representations of the memory timeline data.

Test Plan: CI, should be no functional change, as we only changed comments.

Differential Revision: D50123450

Pull Request resolved: https://github.com/pytorch/pytorch/pull/110949
Approved by: https://github.com/davidberard98
diff --git a/torch/profiler/profiler.py b/torch/profiler/profiler.py
index d2dc31b..cfac7ad 100644
--- a/torch/profiler/profiler.py
+++ b/torch/profiler/profiler.py
@@ -54,7 +54,8 @@
             ``torch.profiler.ProfilerActivity.CPU``, ``torch.profiler.ProfilerActivity.CUDA``.
             Default value: ProfilerActivity.CPU and (when available) ProfilerActivity.CUDA.
         record_shapes (bool): save information about operator's input shapes.
-        profile_memory (bool): track tensor memory allocation/deallocation.
+        profile_memory (bool): track tensor memory allocation/deallocation (see ``export_memory_timeline``
+            for more details).
         with_stack (bool): record source information (file and line number) for the ops.
         with_flops (bool): use formula to estimate the FLOPS of specific operators
             (matrix multiplication and 2D convolution).
@@ -251,14 +252,26 @@
         return MemoryProfile(self.profiler.kineto_results)
 
     def export_memory_timeline(self, path: str, device: Optional[str] = None) -> None:
-        """Extract the memory information from the memory profile collected
-        tree for a given device, and export a timeline plot consisting of
-        [times, [sizes by category]], where times are timestamps and sizes
-        are memory usage for each category. The memory timeline plot will
-        be saved a JSON (by default) or gzipped JSON.
+        """Export memory event information from the profiler collected
+        tree for a given device, and export a timeline plot. There are 3
+        exportable files using ``export_memory_timeline``, each controlled by the
+        ``path``'s suffix.
 
-        Input: (path of file, device)
-        Output: File written as JSON or gzipped JSON
+        - For an HTML compatible plot, use the suffix ``.html``, and a memory timeline
+        plot will be embedded as a PNG file in the HTML file.
+
+        - For plot points consisting of ``[times, [sizes by category]]``, where
+        ``times`` are timestamps and ``sizes`` are memory usage for each category.
+        The memory timeline plot will be saved a JSON (``.json``) or gzipped JSON
+        (``.json.gz``) depending on the suffix.
+
+        - For raw memory points, use the suffix ``.raw.json.gz``. Each raw memory
+        event will consist of ``(timestamp, action, numbytes, category)``, where
+        ``action`` is one of ``[PREEXISTING, CREATE, INCREMENT_VERSION, DESTROY]``,
+        and ``category`` is one of the enums from
+        ``torch.profiler._memory_profiler.Category``.
+
+        Output: Memory timeline written as gzipped JSON, JSON, or HTML.
         """
         # Default to device 0, if unset. Fallback on cpu.
         if device is None and self.use_device and self.use_device != "cuda":