TensorFlow btc allocator

本文探讨了TensorFlow中GPU的BFC(Best Fit with Coalescing)allocator的工作原理,包括其创建过程、显存分配策略以及如何查看当前实际使用显存量。BFC allocator在显存不足时会翻倍申请,可能导致实际使用小于申请量的情况。通过修改分配策略或使用特定Op(MaxBytesInUse)可以更有效地监控和管理GPU显存。
摘要由CSDN通过智能技术生成

    主要写GPU 的bfc allocator,业务需要稍微调研了一下,写个大概,很多细节没有去看。

一、源码

1、BaseGPUDeviceFactory::CreateGPUDevice中使用GPUProcessState单例调用process_state->GetGPUAllocator  创建GPU allocator
2、GetGPUAllocator 实例化allocator

    其中sub_allocator 也就是GPUMemAllocator是通过stream去调用GPU alloc显存的接口,也就是实际去申请GPU显存的allocator,sub_allocator由GPUBFCAllocator控制使用。GPUBFCAllocator是BFCAllocator的子类,通过多态BFCAllocator的基类指针指向GPUBFCAllocator对象。

3、显存的申请策略

    简要说明一下实际申请显存的策略,具体的显存分配算法没有看。

    显存的申请函数是AllocateRaw,释放函数是DeallocateRaw。AllocateRaw的策略是直接通过sub_allocaotr申请大块的显存,然后通过分配算法将合适的一块显存首地址返回,如果剩下的显存不够分配了,再通过sub_allocator直接申请翻倍的显存,如当前已有1G的显存,用完后会再申请1G,变成2G,因此显存的实际申请是1G->2G->4G->8G->16G, 一直到最后剩下可申请的全部申请完,如果显卡显存不够了,且TF的一

引用: 如果要使用docker容器中的btc节点,请取消注释fdocker-compose文件的btcd-testnet部分,并在cmd/multy.config BTCNodeAddress字段中设置其地址。 引用:通过统一的界面获取300多种加密货币的钱包余额。 与:可选的API密钥支持,用TypeScript编写,使用node-fetch而不是弃用的request,较小的图书馆。 根据以上引用内容,btc钱包 node是指在docker容器中的btc节点,可以通过设置docker-compose文件中的btcd-testnet部分,并在cmd/multy.config 的BTCNodeAddress字段中设置节点的地址获取。该节点可以用于获取多种加密货币的钱包余额,并且支持可选的API密钥。这个节点是用TypeScript编写的,并使用了node-fetch库,相对较小。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [Multy-back:Multy的后端-移动Multy区块链钱包](https://download.csdn.net/download/weixin_42134168/14974063)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [balance-crypto:with通过统一的界面获取300多种加密货币的钱包余额](https://download.csdn.net/download/weixin_42169245/15910733)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值