aboutsummaryrefslogtreecommitdiff
path: root/include/tosa_serialization_handler.h
AgeCommit message (Collapse)Author
13 daysUse native size of Bfloat16 and Float8 for serialization/deserializationWon Jeon
Signed-off-by: Won Jeon <won.jeon@arm.com> Change-Id: I0d2075f90988d4fd1139a11b5c154bdd600bb2cd
2024-04-25Update main branch version to 1.1.0 draftEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I9d1fcfb6fd70548b8c1dce8ea768b631bf87eb39
2024-04-19Change serialization version to 1.0.0 draftv1.0.0-rc0v1.00Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Icbc231ada16eeba38452c2c7cec8e66cf43d3c0e
2024-04-19Update float8 code to support non-saturating modeWon Jeon
Signed-off-by: Won Jeon <won.jeon@arm.com> Change-Id: I786aca0a2f137cebd446a3a71c8d6fe186286957
2024-04-08Add conversions of U8 to/from BF16 and FP8Tai Ly
Adds type to PadAttribute and ClampAttribute so their pad_const and max_val/min_val can be deserialized according to type Adds conversion functions of U8 arrays to/from BF16/FP8 values Also, refactor and expose TosaSerializer.convertDataToUint8Vec for converting dtype/data to uint8 list for serialization And modify convertDataToUint8Vec to serialize bf16 values into 2 bytes each, and serialize fp8 values into single bytes each. Signed-off-by: Tai Ly <tai.ly@arm.com> Change-Id: I05659e8187c76d359f1cc9f71c8c23cafd0e877f
2024-02-27Update ConvertU8toF16 to save outputs in F16 containersJerry Ge
- If we save FP16 in FP32 containers, it will change byte representation - which causes wrong values after deserialization - Update the code to store F16 values in F16 containers Signed-off-by: Jerry Ge <jerry.ge@arm.com> Change-Id: I2ddea67471997c596980faea1419422d96bad60d
2024-02-22[serialization_lib] Align to Tosa SpecTai Ly
removed attributes for Reshape, Slice and Tile Ops renamed field accum_dtype to acc_type, renamed then_branch/else_branch to then_graph/else_graph renamed cond_branch/body_branch to cond_graph/body_graph Signed-off-by: Tai Ly <tai.ly@arm.com> Change-Id: I2001f19519987d9e64c18b1f11762f9d3b9be4ec
2024-02-08Change backward compatibility for 0.90.0Won Jeon
Signed-off-by: Won Jeon <won.jeon@arm.com> Change-Id: I437ca381725248e7bb25e7086b7b43c7f1571fb8
2024-02-02Update version to 0.100.0v0.100a0Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Idd444ceb641993e2ed6b647505979ec9d5def796
2024-01-12[serialization_lib] Add tosa shape opsTai Ly
Added tosa shape ops to tosa.fbs also added convert I64 to and from U8 for storing const_shape data values Signed-off-by: Tai Ly <tai.ly@arm.com> Change-Id: I1e938dec7398fbcbe5be657dad65cdd61af5b597
2024-01-03Fix compiler warningsEric Kunze
No functional changes Change-Id: I938fecc941b14c065639e27a110ab1feb7c85ba9 Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2023-09-19Add variable_name to tensorsTai Ly
Signed-off-by: Tai Ly <tai.ly@arm.com> Change-Id: Ia142c8b1a9e0869daefb3eef71100fd0c2a0effc
2023-09-13Update version tags to 0.90 draftEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I4163390599afbbc93b02e3e72b2fe0f53a0bcf06
2023-09-06Enable backward compatibilityv0.90a0Jerry Ge
Signed-off-by: Jerry Ge <jerry.ge@arm.com> Change-Id: I572ae70f8d693c89739ab892a31157235700c3f2
2023-08-23Add is_unranked flag to TensorsTai Ly
This adds a bool field, is_unranked to TosaTensor in tosa.fbs to indicate whether a tensor with shape = {} is an unranked tensor or an 0-D tensor. For older tosa files without this field, the default value is false. Signed-off-by: Tai Ly <tai.ly@arm.com> Change-Id: I86950050b522565509863c483cd3a3c1c50f8f69
2023-08-22[Serialization_lib] Support StatefulOps for TOSAJerry Ge
- Add variable in TosaTensor to schema file - Update TosaSerializationTensor regarding variable change - Rename internal zero_pad() and expose interface as ForceAlignTensorData() Signed-off-by: Jerry Ge <jerry.ge@arm.com> Change-Id: I36fa64eb0802cb5b8d3564ea7233460ef8c9f539
2023-06-01Update version to 0.80.0 draftEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ie046531ee1d6a3977760aa3f8013f326e7c071f9
2023-05-25Remove draft tag from 0.70 serialization libraryv0.70.0v0.70Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: If99d07bdad463346da957b6fa16231f818b86728
2023-05-18Modify TOSA schema to force version to be writtenEric Kunze
Previously if the values were the default, they would not be written to the file Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ibdf13d3ce672d3e8f062a7853d65a966ab5b0877
2023-05-12Support updating serialized tensor shape for shape inferenceJerry Ge
Signed-off-by: Jerry Ge <jerry.ge@arm.com> Change-Id: I44b9fd37e8890bfec02c647857a43bcb6800da80
2023-03-16Update version to 0.70.0 draftEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ie139b262f7bd5966e72a3535ac2253e13d7b3604
2023-03-08Update version number to 0.60 for releasev0.60.0Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I2eb93e6e88ee358c9ec9562c3b4d876eb41cc38c
2022-12-15[region] Add TosaSerializationRegion to serialization_libJerry Ge
- Rationale: add this fix to support constants access between multiple blocks by another layer of abstraction called Region - Changes: - flatbuffers schema update, regenerate header files - add TosaSerializationRegion for the handler - other relevant fixes Signed-off-by: Jerry Ge <jerry.ge@arm.com> Change-Id: I4bb72503abfd629ae017d2f905184efbab244aa8
2022-12-07Update revision to 0.51.0 draftEric Kunze
Change-Id: I6adfd59be1799fc004c9051daa409c902bc4bd1d
2022-12-06Update serialization lib version to 0.50.0v0.50.0v0.50Eric Kunze
In preparation for release Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I58337a835b2afa47f80f27e4a0ebc70836a544ab
2022-10-04FP16 support in serializationJames Ward
* Allow serialization of fp16 data * Add package to support integrated half data-type (half_float::half), independent of native float: http://half.sourceforge.net/ * Allow passing of accumulate data-type in serialization Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I54357f02e3776d81958228f699ea5044f2014f4b
2022-09-08Increment revision to 0.41 draftEric Kunze
Change-Id: I34cc007cb9efc659fe772299217b9178cead9ce0
2022-08-30Remove draft tag for 0.40 releasev0.40.0v0.40Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I9ca5eb956b2ea7eb01e34ecbfb250748abdd0f04
2022-08-29Update version to 0.40 draftEric Kunze
In preparation for version 0.40 release Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I8c02f88bf8af7bdc6f23671bae057748f612e820
2022-07-06Bump schema version number to 0.31 draftEric Kunze
0.30 is released, future schema changes need a new version number. Change-Id: I812d6f2a2539b21f902990298bda570cb1166a42
2022-06-16Remove the draft tag from the schema for v0.30v0.30.0v0.30Eric Kunze
Preparing for v0.30 release Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I5426515f7cf0f83c9f606050969c94667f2dabb9
2022-06-15Remove quantinfo typesEric Kunze
Any needed information has been moved into the attributes for each operator. This aligns with the structure of the attributes in the TOSA specification, and generally simplifies the code. Change-Id: I8243e91b09de1a9115f8af09c5e7def7e8f2866b Signed-off-by: Eric Kunze <eric.kunze@arm.com>
2022-06-13Update serializer version numberEric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Id8ada4e2f0bcd2048c8bb9d0a20909c674bb637b
2021-11-18Add new interface to read flatbuffer from arrayAaron DeBattista
Change-Id: I2ed86545f457d55c919e3f47ef797e766d05334f Signed-off-by: Aaron DeBattista <aaron.debattista@arm.com>
2021-11-15Parse and check schema version when LoadSchemaFile()Kevin Cheng
- This is useful if user has two different copies of serialization_lib code, an incorrectly load the incompatible one. Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I0f241d2ddbb7188df030cc5dddaa6a0b5dad7a45
2021-11-11Clean up constructor interfaceKevin Cheng
- replace string type constructor argument with "const string&" - replace vector type constructor argument with "const vector<T>&" - add rvalue reference constructor for TosaSerializationOperator and TosaSerializationBasicBlock - add SetData() for TosaSerializationTensor, so tensor can be constructed first and data can be linked later Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I7c739df54c37b7ba69ebb6e5af118f660c7c0623
2021-11-03Increment version to 0.24.0 draftEric Kunze
Main branch is now 0.24.0 draft version. Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I053fc2f87c05e3237c10a8d41b1833591087651a
2021-10-29Remove draft tag for 0.23 releasev0.23.0v0.23Eric Kunze
Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: I928b5ebb90b148acddff4a1a6c9e05e1791196a8
2021-10-26Bring back TosaVersion structKevin Cheng
- check fails only when major/minor mismatches - dump warning if major/minor matches but patch/draft mismatches Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I0464f1018faa69b81fa93d42e51e1afd7412977a
2021-10-19Both serializer and schema carry version info nowKevin Cheng
- version number now encoded in serializer as well - rename experimental to draft - rename internal function from FreezeBuilder/InitWithBuf to Serialize/Deserialize Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: I70cb07832fdf66c6bde3d18aadf1f3646765887e
2021-08-02Support I4 weights pack/unpack.Kevin Cheng
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com> Change-Id: Ia7d2bfaa473c8a92c71f075c86aca0a275245f83
2021-06-24Constant data is embedded in flatbuffer as u8 array instead of saving out as ↵Kevin Cheng
separate numpy files now. Change-Id: I9d757ee3bdc637595732b06c5319d1dc957eaf96
2021-04-26Initial commit of serialization library codeEric Kunze
Change-Id: Ie09a7245176aa799e59622e5118b145833b23590 Signed-off-by: Eric Kunze <eric.kunze@arm.com>