This is an automated email from the ASF dual-hosted git repository. chaokunyang pushed a commit to branch fix_rust_benches in repository https://gitbox.apache.org/repos/asf/fory-site.git
commit 671309d23c764396a95fb43eb7715d5857b98125 Author: chaokunyang <[email protected]> AuthorDate: Tue Mar 24 15:11:53 2026 +0800 update benchmarks --- ...-fory_rust_versatile_serialization_framework.md | 2 ++ docs/guide/csharp/cross-language.md | 2 +- docs/guide/csharp/index.md | 4 ++-- docs/guide/csharp/supported-types.md | 2 +- docs/introduction/benchmark.md | 23 +++++++++++++--------- .../current/introduction/benchmark.md | 12 +++-------- .../version-0.16/introduction/benchmark.md | 12 +++-------- .../version-0.16/introduction/benchmark.md | 12 +++-------- 8 files changed, 29 insertions(+), 40 deletions(-) diff --git a/blog/2025-10-29-fory_rust_versatile_serialization_framework.md b/blog/2025-10-29-fory_rust_versatile_serialization_framework.md index f26bafc4d9..a278818dda 100644 --- a/blog/2025-10-29-fory_rust_versatile_serialization_framework.md +++ b/blog/2025-10-29-fory_rust_versatile_serialization_framework.md @@ -311,6 +311,8 @@ This modular design ensures clean separation of concerns and makes the codebase | system_data | medium | serialize | 174,240 | 11,896 | 14,753 | fory | | system_data | large | serialize | 10,671 | 876 | 1,040 | fory | +See https://github.com/apache/fory/tree/v0.16.0/benchmarks/rust for rust benchmark code and data. + ## When to Use Apache Fory Rust ### ✅ **Ideal Use Cases** diff --git a/docs/guide/csharp/cross-language.md b/docs/guide/csharp/cross-language.md index 5a2af307ed..a9ec4fa4e1 100644 --- a/docs/guide/csharp/cross-language.md +++ b/docs/guide/csharp/cross-language.md @@ -91,7 +91,7 @@ value = fory.deserialize(payload_from_csharp) ## Type Mapping Reference -See [xlang guide](../xlang/index.md) for complete mapping. +See [xlang guide](../xlang) for complete mapping. ## Best Practices diff --git a/docs/guide/csharp/index.md b/docs/guide/csharp/index.md index 8aac393f50..ed12c1da65 100644 --- a/docs/guide/csharp/index.md +++ b/docs/guide/csharp/index.md @@ -99,6 +99,6 @@ User decoded = fory.Deserialize<User>(payload); ## Related Resources -- [Cross-language serialization specification](../../specification/xlang_serialization_spec.md) -- [Cross-language guide](../xlang/index.md) +- [Cross-language serialization specification](../../specification/xlang_serialization_spec) +- [Cross-language guide](../xlang) - [C# source directory](https://github.com/apache/fory/tree/main/csharp) diff --git a/docs/guide/csharp/supported-types.md b/docs/guide/csharp/supported-types.md index 0b63977887..7ecf94a269 100644 --- a/docs/guide/csharp/supported-types.md +++ b/docs/guide/csharp/supported-types.md @@ -88,7 +88,7 @@ Dynamic object payloads via `Serialize<object?>` / `Deserialize<object?>` suppor ## Notes - User-defined types should be registered explicitly. -- For cross-language usage, follow the [xlang guide](../xlang/index.md). +- For cross-language usage, follow the [xlang guide](../xlang). ## Related Topics diff --git a/docs/introduction/benchmark.md b/docs/introduction/benchmark.md index 195418881d..dcb2f641c1 100644 --- a/docs/introduction/benchmark.md +++ b/docs/introduction/benchmark.md @@ -19,17 +19,11 @@ The following benchmarks compare Fory against popular Java serialization framewo ### Java Serialization -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_STRUCT_to_directBuffer_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_MEDIA_CONTENT_to_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_MEDIA_CONTENT_to_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_SAMPLE_to_array_tps.png" /> + -### Java Deserialization +**Deserialization Throughput**: -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_STRUCT_from_directBuffer_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_MEDIA_CONTENT_from_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_MEDIA_CONTENT_from_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_SAMPLE_from_array_tps.png" /> + **Important**: Fory's runtime code generation requires proper warm-up for performance measurement: @@ -63,6 +57,17 @@ single-object and list workloads. Note: Results depend on hardware, dataset, and implementation versions. See the Go benchmark report for details: https://fory.apache.org/docs/benchmarks/go/ +## Python Benchmark + +Fory Python demonstrates strong performance compared to `pickle` and Protobuf +across single-object and list workloads. + +<img src="/img/benchmarks/python/throughput.png" width="90%"/> + +Note: Results depend on hardware, dataset, Python runtime, and implementation +versions. See the Python benchmark report for details: +https://fory.apache.org/docs/benchmarks/python/ + ## C# Benchmark Fory C# demonstrates strong performance compared to Protobuf and Msgpack across diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs/current/introduction/benchmark.md b/i18n/zh-CN/docusaurus-plugin-content-docs/current/introduction/benchmark.md index dd2e7d353b..446bc1d689 100644 --- a/i18n/zh-CN/docusaurus-plugin-content-docs/current/introduction/benchmark.md +++ b/i18n/zh-CN/docusaurus-plugin-content-docs/current/introduction/benchmark.md @@ -15,17 +15,11 @@ sidebar_position: 2 ### Java 序列化 -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_STRUCT_to_directBuffer_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_MEDIA_CONTENT_to_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_MEDIA_CONTENT_to_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_SAMPLE_to_array_tps.png" /> + -### Java 反序列化 +**反序列化吞吐量**: -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_STRUCT_from_directBuffer_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_MEDIA_CONTENT_from_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_MEDIA_CONTENT_from_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_SAMPLE_from_array_tps.png" /> + 更多关于类型前向/后向兼容性、堆外支持、零拷贝序列化的性能测试,请参见 [benchmarks](https://github.com/apache/fory/tree/main/docs/benchmarks)。 diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs/version-0.16/introduction/benchmark.md b/i18n/zh-CN/docusaurus-plugin-content-docs/version-0.16/introduction/benchmark.md index 1145623351..b8feb8e0ea 100644 --- a/i18n/zh-CN/docusaurus-plugin-content-docs/version-0.16/introduction/benchmark.md +++ b/i18n/zh-CN/docusaurus-plugin-content-docs/version-0.16/introduction/benchmark.md @@ -15,17 +15,11 @@ sidebar_position: 2 ### Java 序列化 -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_STRUCT_to_directBuffer_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_MEDIA_CONTENT_to_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_MEDIA_CONTENT_to_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/serialization/bench_serialize_SAMPLE_to_array_tps.png" /> + -### Java 反序列化 +**反序列化吞吐量**: -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_STRUCT_from_directBuffer_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_MEDIA_CONTENT_from_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_MEDIA_CONTENT_from_array_tps.png" /> -<img width="33%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_SAMPLE_from_array_tps.png" /> + 更多关于类型前向/后向兼容性、堆外支持、零拷贝序列化的性能测试,请参见 [benchmarks](https://github.com/apache/fory/tree/main/docs/benchmarks)。 diff --git a/versioned_docs/version-0.16/introduction/benchmark.md b/versioned_docs/version-0.16/introduction/benchmark.md index 195418881d..e541881b71 100644 --- a/versioned_docs/version-0.16/introduction/benchmark.md +++ b/versioned_docs/version-0.16/introduction/benchmark.md @@ -19,17 +19,11 @@ The following benchmarks compare Fory against popular Java serialization framewo ### Java Serialization -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_STRUCT_to_directBuffer_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_compatible_MEDIA_CONTENT_to_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_MEDIA_CONTENT_to_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/serialization/bench_serialize_SAMPLE_to_array_tps.png" /> + -### Java Deserialization +**Deserialization Throughput**: -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_STRUCT_from_directBuffer_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_compatible_MEDIA_CONTENT_from_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_MEDIA_CONTENT_from_array_tps.png" /> -<img width="48%" alt="" src="/img/benchmarks/deserialization/bench_deserialize_SAMPLE_from_array_tps.png" /> + **Important**: Fory's runtime code generation requires proper warm-up for performance measurement: --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
