Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何将一个Tensor在内存中(不要保存到硬盘)序列化成可以通过网络传输的二进制格式? #63815

Open
kehuo opened this issue Apr 24, 2024 · 1 comment
Labels

Comments

@kehuo
Copy link

kehuo commented Apr 24, 2024

请提出你的问题 Please ask your question

你好飞桨同学,

我的需求,是将一个 paddle.Tensor 序列化成可以在网络中传输的二进制格式数据。

1 我知道 paddle.save 可以将tensor序列化保存到磁盘上,但我们不想耗费保存加载硬盘的时间。
2 我知道 paddle.distributed.send/recv 可以通过分布式机制在2个分布式节点间传输tensor,但它的前提是需要为传输的2个机器建立分布式集群后才能使用,这不符合我们的业务要求。
3 我通过咨询ChatGPT,它告诉我曾经paddle提供过 paddle.fluid.core.create_stream_writer(), 可以将tensor直接在序列化并保留在内存中,无需存在硬盘,但我安装 paddlepaddle-gpu==2.6.0后, 报错 没有该API。我知道 paddle 2.6 把 fluid 改成了 base,但是我尝试调用 paddle.base.core.create_stream_writer() 也没有这个API。

请问有什么办法可以支持我的需求吗?也就是将一个tensor序列化成可以直接在网络中传输的二进制数据,并且保留在内存中,不要保存在硬盘上?

感谢

@kehuo kehuo added status/new-issue 新建 type/question 用户提问 labels Apr 24, 2024
@kehuo
Copy link
Author

kehuo commented Apr 24, 2024

how to serialize a tensor object and keep it in memory instead of save to disk?

@kehuo kehuo changed the title 如何将一个Tensor在内存中(不要保存到硬盘)序列化成可以通过网络rpc传输的二进制格式? 如何将一个Tensor在内存中(不要保存到硬盘)序列化成可以通过网络传输的二进制格式? Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant