code: def get_per_store_features_from_measure_pairs(
      inputs: List[MeasureInput],
      results: List[MeasureResult],
      skip_first_n_feature_extraction: int = 0,
      max_n_bufs: Optional[int] = None,
  ) -> Tuple[np.ndarray, np.ndarray, np.ndarray]:
      """Get per-store features from measurement input/result pairs
  
      Parameters
      ----------
      inputs: List[MeasureInput]
          The measure inputs
      results: List[MeasureResult]
          The measure results
      skip_first_n_feature_extraction: int
          Skip feature extraction for the first n states
      max_n_bufs: int
          The maximum number of extracted buffers for one statement
  
      Returns
      -------
      features: np.ndarray
          Feature vectors
      normalized_throughputs: np.ndarray
          Normalized throughputs
      task_ids: np.ndarray
          Task ids
      """
      byte_arr = _ffi_api.GetPerStoreFeaturesFromMeasurePairs(
          inputs,
          results,
          skip_first_n_feature_extraction,
          max_n_bufs or DEFAULT_MAX_N_BUFS,
      )
      return unpack_feature(byte_arr)
  
file_path: tvm/python/tvm/auto_scheduler/feature.py
imports: from typing import List, Tuple, Union, Optional, Dict
  import struct
  import numpy
  from .loop_state import State, StateObject
  from .measure import MeasureInput, MeasureResult
  from .None import _ffi_api
  from ..tir import PrimFunc
label_desc: Use image node_id 3 for calling a global function with example usage: get_per_store_features_from_measure_pairs(inputs, results, skip_first_n_feature_extraction, max_n_bufs) and returns: unpack_feature