class_docstr: Object class to read the index (.idx) file
  
  Args:
      idx_path (str): The path to the index file
  
      multimodal (bool): Whether the dataset is multimodal
class_docstr_tok: ["Object","class","to","read","the","index","(",".idx",")","file","Args",":","idx_path","(","str",")",":","The","path","to","the","index","file","multimodal","(","bool",")",":","Whether","the","dataset","is","multimodal"]
docstr: Clean up the object
          
docstr_tok: ["Clean","up","the","object"]
code: def __del__(self) -> None:
      """Clean up the object"""
      self.bin_buffer_mmap._mmap.close()
      del self.bin_buffer_mmap
  
imports: import logging
  import os
  import shutil
  import struct
  import time
  from enum import Enum
  from functools import lru_cache
  from itertools import accumulate
  from types import TracebackType
  from typing import List, Optional, Tuple, Type, Union
  import numpy
  import torch
  from megatron.core.datasets.utils import log_single_rank
label_desc: Use image node_id 2 for calling the _IndexReader obj's underlying member method code with example usage: obj.__del__() without return types