torch indices x[indices] 内存不足崩溃,python进程锁报错。
报错
Process Process-167:
Traceback (most recent call last):File "/usr/lib/python3.10/multiprocessing/process.py", line 317, in _bootstraputil._exit_function()File "/usr/lib/python3.10/multiprocessing/util.py", line 360, in _exit_function_run_finalizers()File "/usr/lib/python3.10/multiprocessing/util.py", line 300, in _run_finalizersfinalizer()File "/usr/lib/python3.10/multiprocessing/util.py", line 224, in __call__res = self._callback(*self._args, **self._kwargs)File "/usr/lib/python3.10/multiprocessing/queues.py", line 199, in _finalize_jointhread.join()File "/usr/lib/python3.10/threading.py", line 1096, in joinself._wait_for_tstate_lock()File "/usr/lib/python3.10/threading.py", line 1116, in _wait_for_tstate_lockif lock.acquire(block, timeout):
看到进程锁,我人都麻了,找了好多天,然后每一行的去看,发现是这里出了问题X[mask.expand_as(X)]
这里的X如果很大的话,就会崩溃,所以我们需要分chunk去做。
这是会崩溃的代码,会在最后一行崩溃。
import torch
X=torch.rand([2957312, 1024])
mask=torch.randint(2,[2957312, 1],dtype=bool)
X=X[mask.expand_as(X)]
这是修正后,分chunk去做的代码
import torch
def select_elements(X, mask, chunk_size=10000):selected_indices = []for i in range(0, len(X), chunk_size):chunk = X[i:i + chunk_size]chunk_mask = mask[i:i + chunk_size]expanded_mask = chunk_mask.expand_as(chunk)selected_chunk = chunk[expanded_mask]selected_indices.append(selected_chunk)selected_indices = torch.cat(selected_indices)return selected_indices
X=torch.rand([2957312, 1024])
mask=torch.randint(2,[2957312, 1],dtype=bool)
X=select_elements(X, mask)
这样就运行成功了。
相关文章:
torch indices x[indices] 内存不足崩溃,python进程锁报错。
报错 Process Process-167: Traceback (most recent call last):File "/usr/lib/python3.10/multiprocessing/process.py", line 317, in _bootstraputil._exit_function()File "/usr/lib/python3.10/multiprocessing/util.py", line 360, in _exit_funct…...
第二证券:机构争分夺秒抢滩 金融大模型落地为时尚早
本年以来,大模型席卷金融业,一夜之间,简直悉数金融场景都在探索适配大模型接口。但是,志向丰满,实践骨感。有大型金融组织IT部分人士比方,金融大模型从战略规划到安顿落地,有着从“卖家秀”走到…...
C#WPF使用MaterialDesign 显示带遮罩的对话框
第一步定义对话框 <UserControlx:Class="TemplateDemo.Views.Edit.UCEditUser"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.m…...
Nuxt.js:下一代Web开发框架的革命性力量
文章目录 一、Nuxt.js简介二、Nuxt.js的特点1. 集成Vue.js和Node.js2. 自动代码分割和优化3. 服务端渲染(SSR)4. 强大的路由管理5. 丰富的插件系统 三、Nuxt.js的优势1. 提高开发效率2. 降低维护成本3. 提高用户体验 四、Nuxt.js在实际应用中的案例1. 电…...
【JavaEE初阶】死锁问题
目录 一、死锁的三种典型场景 1、一个线程,一把锁 2、两个线程,两把锁 3、N个线程,M把锁 死锁,是多线程代码中的一类经典问题。我们知道加锁是能解决线程安全问题的,但是如果加锁的方式不当,就可能产生死…...
uniapp 打包的 IOS打开白屏 uniapp打包页面空白
uniapp的路由跟vue一样,有hash模式和history模式, 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。 如果不想要很丑的 hash,我们可以用路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。…...
在 Redis 中使用 JSON 文档:命令行界面(CLI)和 Navicat 集成
Redis,因其极高的性能而闻名,是一款多功能的 NoSQL 数据库,擅长处理键值对。虽然 Redis主要用于处理简单数据结构,但是同样支持更多复杂的数据类型,如列表、集合甚至是 JSON 文件。在本文,我们将深入到 Red…...
Win Server 2019远程桌面服务部署
一、添加远程桌面授权服务 服务器管理 - 添加角色和功能打开“添加角色和功能向导”窗口,选择基于角色或给予功能安装: 打开服务器管理,打开角色和功能,添加远程回话主机和远程桌面授权 image.png 以上配置完成后使用期限为120…...
vue3-在自定义hooks使用useRouter 报错问题
文章目录 前言一、报错分析报错的Vue warn截图:查看文档 二、那么在hook要怎么引入路由呢? 前言 记录在vue3项目中,hook使用useRouter 报错问题 一、报错分析 报错的Vue warn截图: 警告 inject() can only be used inside setup…...
深度学习框架:Pytorch与Keras的区别与使用方法
☁️主页 Nowl 🔥专栏《机器学习实战》 《机器学习》 📑君子坐而论道,少年起而行之 文章目录 Pytorch与Keras介绍 Pytorch 模型定义 模型编译 模型训练 输入格式 完整代码 Keras 模型定义 模型编译 模型训练 输入格式 完整代…...
1145. 北极通讯网络(Kruskal,并查集维护)
北极的某区域共有 n 座村庄,每座村庄的坐标用一对整数 (x,y) 表示。 为了加强联系,决定在村庄之间建立通讯网络,使每两座村庄之间都可以直接或间接通讯。 通讯工具可以是无线电收发机,也可以是卫星设备。 无线电收发机有多种不…...
【23-24 秋学期】NNDL 作业9 RNN - SRN
简单循环网络(Simple Recurrent Network,SRN)只有一个隐藏层的神经网络. 目录 1. 实现SRN (1)使用Numpy (2)在1的基础上,增加激活函数tanh (3࿰…...
Docker + Jenkins + Nginx实现前端自动化部署
目录 前言一、前期准备工作1、示例环境2、安装docker3、安装Docker Compose4、安装Git5、安装Nginx和Jenkinsnginx.confdocker-compose.yml 6、启动环境7、验证Nginx8、验证Jenkins 二、Jenkins 自动化部署配置1、设置中文2、安装Publish Over SSH、NodeJS(1&#x…...
文生视频的发展史及其原理解析:从Gen2、Emu Video到PixelDance、SVD、Pika 1.0
前言 考虑到文生视频开始爆发,比如11月份就是文生视频最火爆的一个月 11月3日,Runway的Gen-2发布里程碑式更新,支持4K超逼真的清晰度作品(runway是Stable Diffusion最早版本的开发商,Stability AI则开发的SD后续版本)11月16日&a…...
【python+Excel】读取和存储测试数据完成接口自动化测试
http_request2.py用于发起http请求 #读取多条测试用例 #1、导入requests模块 import requests #从 class_12_19.do_excel1导入read_data函数 from do_excel2 import read_data from do_excel2 import write_data from do_excel2 import count_case #定义http请求函数COOKIENon…...
WordPress插件大全-免费的WordPress插件汇总
随着互联网的不断发展,网站建设变得日益普及。对于大多数人而言,WordPress是一个熟悉且易于使用的网站建设平台。然而,有时候我们可能会觉得WordPress的功能还不够满足我们的需求,这时候,插件就成了解决问题的得力工具…...
STM32通讯设计
STM32通讯设计 通讯流程STM32程序 通讯流程 1.使用HT2202芯片配置为主机接收(轮询模式)。 2.将STM32芯片配置为从机发送,中断模式下发送固定数据。 3.如果HT2202芯片能够收到STM32发送的数据则通讯成功,否则通讯失败。 STM32程序…...
外汇天眼:在QOINTEC投资需缴纳分成费才给出金?这合理么?
一般来说,在正规的平台上申请出金是不需要缴纳什么费用的,除非有一些特殊情况,像低额出金、没有交易就申请出金等情况下,或许会让你缴纳一定的手续费或者隔夜利息费等(不同的平台有不同的规则),…...
C_8练习题
一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 1,在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为() A. main B. MAIN C.name D. function 以下正确…...
HuggingFace学习笔记--Tokenizer的使用
1--AutoTokenizer的使用 官方文档 AutoTokenizer() 常用于分词,其可调用现成的模型来对输入句子进行分词。 1-1--简单Demo 测试代码: # 分词器测试Demo from transformers import AutoTokenizerif __name__ "__main__":checkpoint "…...
微信小程序私域直播的五大替代方案及成本效益分析
1. 微信小程序私域直播现状与挑战 去年6月腾讯突然关闭小程序直播功能申请的消息,让很多依赖微信生态的商家措手不及。我接触过不少做服装、美妆的客户,他们之前靠着小程序直播能轻松做到单场50万的销售额,功能关闭后业绩直接腰斩。现在商家们…...
伏秒平衡在DC-DC开关电路中的关键作用与实现
1. 伏秒平衡:DC-DC开关电路的"心跳规律" 第一次拆解电源模块时,我看到电感在PWM信号驱动下规律地"呼吸",就像心脏跳动一样稳定。这种周期性规律就是伏秒平衡的直观体现——当DC-DC电路处于稳态时,电感两端的正…...
OpenClaw语音交互:Qwen3.5-9B实现钉钉语音指令转任务执行
OpenClaw语音交互:Qwen3.5-9B实现钉钉语音指令转任务执行 1. 为什么需要语音交互的自动化助手 作为一个长期被会议纪要和日报折磨的开发者,我一直在寻找能解放双手的解决方案。键盘快捷键和脚本自动化虽然能解决部分问题,但当我在通勤路上突…...
SparkFun HyperDisplay SSD1309 OLED驱动库详解
1. 项目概述SparkFun HyperDisplay SSD1309 是 SparkFun Electronics 针对基于 SSD1309 显示驱动芯片的 OLED 模块推出的标准化嵌入式显示控制库。该库并非独立实现,而是作为 SparkFun HyperDisplay 显示抽象框架(Display Abstraction Framework…...
嵌入式系统三大软件架构解析与选型指南
1. 嵌入式软件框架概述在嵌入式系统开发领域,软件架构的选择直接影响着项目的成败。作为一名从业十余年的嵌入式工程师,我见过太多因为架构选择不当而导致项目延期甚至失败的案例。嵌入式系统的特殊性在于资源受限、实时性要求高,这使得软件架…...
基于单片机双向可控硅控制交流电导通脚
一、系统功介绍 基于单片机双向可控硅控制交流电导通脚的设计,是通过单片机精确控制双向可控硅的触发时机,实现交流电的导通与断开,广泛应用于交流调压、调光、电机调速及无触点开关等场景。 以下从核心原理、硬件设计、软件实现、应用场景及…...
3步彻底解决显卡驱动残留问题:Display Driver Uninstaller终极清理指南
3步彻底解决显卡驱动残留问题:Display Driver Uninstaller终极清理指南 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-driv…...
拯救眼瞎程序员:用Vim同时高亮10+关键词的骚操作(含配色方案)
拯救眼瞎程序员:Vim多关键词高亮实战指南 深夜两点,你盯着满屏的分布式系统错误日志,十几个微服务模块的报错信息交织在一起,像一团乱麻。关键词搜索只能一个个来,眼睛都快看瞎了——这场景是不是很熟悉?今…...
KXTJ3-1057运动检测库:嵌入式低功耗加速度计工程实践
1. KXTJ3-1057运动检测库深度解析:面向嵌入式系统的低功耗MEMS加速度计工程实践1.1 芯片级硬件特性与系统定位KXTJ3-1057是罗姆(ROHM)推出的超低功耗三轴MEMS加速度计,其核心价值不在于参数堆砌,而在于“运动检测无冗余…...
大屏互动游戏——飞机大战
熹乐互动《飞机大战》以实时同步、高并发稳定、低延迟竞技、全场景兼容为核心技术架构,专为年会、展会、发布会、商超引流等大型现场打造零门槛、高沉浸的多人空战互动。 一、超低延迟实时同步架构 - 采用自研帧同步优化协议UDP可靠传输,操作指令压缩为…...
