jupyter 内核似乎挂掉了 它很快将自动重启---解决方案

这篇具有很好参考价值的文章主要介绍了jupyter 内核似乎挂掉了 它很快将自动重启---解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

序言

jupyter莫名死掉重启,是一件很头痛的事情,尤其是,等了很久后它死了,其原因应该多而繁杂,各式各样,需要具体情况具体分析。最近就碰到一次,之前运行良好的代码,又重新运行,竟然死掉了,我草不信重新试一下,结果反复死了很多次,逐渐暴躁失去理智,很想咋键盘,真的大忌。后来通过一系列方法终于解决掉了,记录一下这个过程,希望带给你一点启发。

遇到这种问题后,不要网上乱搜这样效率低下,正规解法是:

  1. jupyter后台或者前台log日志,找到关键报错信息。
  2. 将关键报错信息贴到网上在进行搜索。
  3. 解决后,反思到底发生了什么事情,归纳到自己的知识体系中。

在搜索过程中,不要怕,如果无人请教,可以大胆假设,自圆其说,错了就再改就行了。

下面介绍一下我本次解决过程。

现象

运行下面的代码,jupyter无端由崩溃重启,报内核似乎挂掉了 它很快将自动重启

import faiss
import numpy as np
import mkl

def faiss_similarity(main_mtx, candi_mtx, topn=30):
    main_mtx = main_mtx.astype(np.float32)
    new_candi_mtx = candi_mtx.astype(np.float32)
    N, d = main_mtx.shape
    # https://zhuanlan.zhihu.com/p/357414033
    index = faiss.IndexFlatIP(d)    # inner product
    # index = faiss.IndexFlatL2(d) 
    index.add(new_candi_mtx)
    
    step = 10
    D, I = [], []
    for i in tqdm(range(0, N, step)):
        # xb不能是float64
        dm, im = index.search(main_mtx[i:i+step], topn)
        D.append(dm)
        I.append(im)
    return np.vstack(D), np.vstack(I)

查询后台Log和搜索答案

由于我的jupyter是在后台启动的,放到了output.log,所以就在后台打开,找到如下错误:
jupyter 内核似乎挂掉了 它很快将自动重启---解决方案
此类cannot loadnot found错误,一般都是没有安装某个程序或者安装后路径出错了,所以一般重装能够解决问题。

找到关键词后去网上搜索,经过尝试最终发现解决方法如下:

import faiss
import numpy as np
import mkl
"""
重新安装mkl和faiss
conda install mkl
conda install mkl-service
conda install -c pytorch faiss-cpu
"""
mkl.get_max_threads()
"""
上边的话用来解决这个bug
INTEL MKL ERROR: /data/zfchen/miniconda3/envs/infringement/lib/python3.7/site-packages/faiss/../../.././libmkl_avx512.so.2: undefined symbol: mkl_sparse_optimize_bsr_trsm_i8.
Intel MKL FATAL ERROR: Cannot load libmkl_avx512.so.2 or libmkl_def.so.2.
[I 19:44:47.937 NotebookApp] KernelRestarter: restarting kernel (1/5), keep random ports
"""
def faiss_similarity(main_mtx, candi_mtx, topn=30):
    main_mtx = main_mtx.astype(np.float32)
    new_candi_mtx = candi_mtx.astype(np.float32)
    N, d = main_mtx.shape
    # https://zhuanlan.zhihu.com/p/357414033
    index = faiss.IndexFlatIP(d)    # inner product
    # index = faiss.IndexFlatL2(d) 
    index.add(new_candi_mtx)
    
    # step不要太大有可能会挂掉
    step = 10
    D, I = [], []
    for i in tqdm(range(0, N, step)):
        # xb不能是float64
        # search的向量一次性不要太多,不然有可能会导致jupyter挂掉
        dm, im = index.search(main_mtx[i:i+step], topn)
        D.append(dm)
        I.append(im)
    return np.vstack(D), np.vstack(I)

总结错误

Faiss-cpu版本,在intel Cpu上,会运行依赖mkl,应当安装它。安装后,依然无法其效果,最后看到cpu没有满载,运行mkl.get_max_threads()获得CPU满载。文章来源地址https://www.toymoban.com/news/detail-415745.html

到了这里,关于jupyter 内核似乎挂掉了 它很快将自动重启---解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (Python)Jupyter Notebook无法运行代码,且提示error和自动保存失败时如何操作?无法链接内核?

    目录 一、报错情形 1、运行代码时跳转下一行,无法执行代码。 2、在修改文件名是提示失败,出现“error”字样。 二、深层原因 三、解决方案 四.建议使用原环境 Anaconda的Jupyter Notebook作为优秀的网页编辑器,非常适用于编写Python程序,但往往可能因安装版本不兼容等原因而

    2024年02月07日
    浏览(51)
  • 记录windows蓝屏,强制重启后导致windows上虚拟机docker中的mysql镜像坏掉了

    场景描述: 日常开发学习时,我都是用一个笔记本,项目采用前后端分离的微服务架构,中间件nacos在window上部署运行,mysql和redis都是部署在windows虚拟机的docker中,大量的进程给电脑内存干崩了,最后导致蓝屏,没办法只能强制重启。 解决思路: 1、重启后再次启动项目时

    2024年02月17日
    浏览(48)
  • Windows系统安装Anaconda、conda源换源、PyPI源换源、jupyter的kernel内核配置、jupyter自动补全配置、PyCharm的Python解释器配置

    在Python的学习,以及机器学习、深度学习的过程当中,大概率会用到Anaconda平台,为了使后来的学习工具更加高效,这里讲解Anaconda的安装以及进行换源 前言: 分为四大部分 1、anaconda安装 2、anaconda换源conda源 3、anaconda换源pypi源 4、jupyter的kernel配置 5、PyCharm的Python解释器选择

    2024年01月17日
    浏览(88)
  • Linux硬盘掉了手动挂载的解决方案

      大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作

    2024年02月08日
    浏览(39)
  • 解决机械革命等笔记本电脑系统无法完成更新无法关机自动重启问题的两种方案

    1. 首先是更改自动重启的设置  具体如下图 首先打开设置,在左下角开始处 设置图标。也可以搜索打开 打开系统 下拉点击关于 再下拉找到高级系统设置 点击高级 设置  取消勾选的自动重新启动选项  点击确定     2. 还是打开设置  点击更新与安全  进入恢复页面 下拉

    2024年02月16日
    浏览(384)
  • es自动挂掉问题解决

    当es启动后一段时间就挂掉了,输入jps后显示 3262 – process information unavailable 解决方法: 这是因为jvm的虚拟机内存不足导致挂掉节点,所以通过修改以下文件 /export/servers/elasticsearch/config/jvm.options 将内存调成64M即可 重新启动elasticsearch,问题解决

    2024年02月11日
    浏览(32)
  • jupyter内核错误

    1、在dos窗口输入以下命令激活环境:anaconda activate 【py环境名,比如py37】(目的是新家你一个虚拟环境) 2、在虚拟环境py37下安装jupyter notebook,命令:pip install jupyter notebook 3、安装ipykernel,命令:conda install ipykernel 4、将虚拟环境注入jupyter notebook,命令: python -m ipykernel in

    2024年01月22日
    浏览(33)
  • jupyter中如何管理内核

    刚开始用python就一直在用pycharm,因为专业版的pycharm有很多非常棒的插件提供给python的前端或者后端开发,后面需要做数据分析的时候,发现还是jupyter好用,原因是jupyter中每个模块就是一个单独的执行单元,写一个功能就测试一个功能,互不干预,但又能利用前面已经执行过

    2024年02月12日
    浏览(28)
  • jupyter notebook内核启动失败&pycharm里无法运行jupyter notebook程序

    提示:本人下载anaconda的背景是:之前下了一个miniconda,后面卸载了,可能没卸干净,然后重新下来一个anaconda:配置好环境变量之后,jupyter notebook一直启动失败,在网上查了原因可能是反复安装anaconda时导致的python的kernel内核启动失败 1.此页面是在anaconda prompt里面输入指令

    2024年02月06日
    浏览(68)
  • Anaconda虚拟环境+jupyter内核配置(详解)

    1.Anaconda虚拟环境查看 安装好anaconda环境后,有两种方式可以查看虚拟环境: 第一种: 打开anaconda,如图所示即可查看。 第二种: 打开Anaconda Prompt,输入 如图所示,base环境即是当前的环境,TensorEMG是我创建的环境,base环境是下载好anaconda后自带的环境。 2.为什么要装虚拟环

    2024年02月03日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包