MCPcopy Create free account
hub / github.com/pytorch/executorch / deserialize_pte_binary

Function deserialize_pte_binary

exir/_serialize/_program.py:747–770  ·  view source on GitHub ↗

Returns a PTEFile deserialized from the given runtime binary data.

(program_data: bytes)

Source from the content-addressed store, hash-verified

745
746
747def deserialize_pte_binary(program_data: bytes) -> PTEFile:
748 """Returns a PTEFile deserialized from the given runtime binary data."""
749 program_size = len(program_data)
750 segment_base_offset = 0
751
752 # Look for an extended header to see if segments follow the flatbuffer
753 # data.
754 eh: Optional[_ExtendedHeader] = _get_extended_header(program_data)
755 if eh and eh.is_valid():
756 program_size = eh.program_size
757 segment_base_offset = eh.segment_base_offset
758
759 # Parse the flatbuffer data.
760 program: Program = _json_to_program(
761 _program_flatbuffer_to_json(program_data[:program_size])
762 )
763
764 if segment_base_offset != 0:
765 # Move segment data back into the Program.
766 return _restore_segments(
767 program=program, segment_data=program_data[segment_base_offset:]
768 )
769
770 return PTEFile(program=program, mutable_data=None, named_data=None)
771
772
773def _extract_delegate_payload(

Calls 6

_json_to_programFunction · 0.85
_restore_segmentsFunction · 0.85
PTEFileClass · 0.85
_get_extended_headerFunction · 0.70
is_validMethod · 0.45