Pytorch實現(xiàn)tensor序列化和并行化的示例詳解
Pytorch 實現(xiàn) tensor 序列化和反序列化
序列化 Serialization
保存一個對象到一個硬盤文件上
torch.save(obj, f, pickle_mode, pickle_protocol)
參數(shù):
- obj – 保存對象
- f - 類文件對象 (返回文件描述符)或一個保存文件名的字符串
- pickle_module – 用于 pickling 元數(shù)據(jù)和對象的模塊
- pickle_protocol – 指定 pickle protocal 可以覆蓋默認參數(shù)
從磁盤文件中讀取一個通過 torch.save()保存的對象
torch.load(f, map_location=None, pickle_mode)
torch.load() 可通過參數(shù) map_location 動態(tài)地進行內存重映射,使其能從不動設備中讀取文件。一般調用時,需兩個參數(shù): storage 和 location tag。 返回不同地址中的 storage,或著返回 None (此時地址可以通過默認方法進行解析)。 如果這個參數(shù)是字典的話,意味著其是從文件的地址標記到當前系統(tǒng)的地址標記的映射。 默認情況下,location tags 中 "cpu"對應 host tensors,‘cuda:device_id’ (e.g.‘cuda:2’) 對應 cuda tensors。 用戶可以通過 register_package 進行擴展,使用自己定義的標記和反序列化方法。
- f – 類文件對象 (返回文件描述符)或一個保存文件名的字符串
- map_location – 一個函數(shù)或字典規(guī)定如何 remap 存儲位置
- pickle_module – 用于 unpickling 元數(shù)據(jù)和對象的模塊 (必須匹配序列化文件時的 pickle_module )

并行化 Parallelism
torch.get_num_threads torch.get_num_threads() → int #獲得用于并行化 CPU 操作的 OpenMP 線程數(shù) torch.set_num_threads torch.set_num_threads(int) #設定用于并行化 CPU 操作的 OpenMP 線程數(shù)
以上就是Pytorch實現(xiàn)tensor序列化和并行化的示例詳解的詳細內容,更多關于Pytorch tensor序列化和并行化的資料請關注腳本之家其它相關文章!
相關文章
詳解Python中使用base64模塊來處理base64編碼的方法
8bit的bytecode經(jīng)常會被用base64編碼格式保存,Python中自帶base64模塊對base64提供支持,這里我們就來詳解Python中使用base64模塊來處理base64編碼的方法,需要的朋友可以參考下2016-07-07
numpy的Fancy Indexing和array比較詳解
這篇文章主要介紹了numpy的Fancy Indexing和array比較詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-06-06
Python實現(xiàn)身份證前六位地區(qū)碼對照表文件
這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)身份證前六位地區(qū)碼對照表文件,文中的示例代碼講解詳細,感興趣的可以了解一下2022-12-12

