mayavi与X11的一些坑总结
1. Mayavi:https://docs.enthought.com/mayavi/mayavi/
适合渲染各种和图形有关的数据。在大批量处理数据时,一般不希望对每一个渲染好的对象都将其显示出来,(如1万个图形显示一万次窗口,电脑会先疯掉的)
则可以设置offscreen,不让图形渲染的窗口显示出来。详见https://docs.enthought.com/mayavi/mayavi/tips.html#off-screen-rendering
mayavi的mlab,会在几乎每一次调用(包括import时)都创建一个python“图形化”进程,即使使用了offscreen也会创建“图形化”进程,只不过这时没有显示出窗口,但这个进程的属性仍然是“图形化”属性,它会试图调用和OpenGL相关的一个包来进行渲染(虽然不显示出来,但是例如投影射线等操作还是需要进行渲染计算的)
本来是在mac上运行程序的,没什么问题就是特别烫。后来放在服务器1上面,但是一直显示"cannot create glx context"
这是由于服务器1上的显卡适用于科学计算,不适用于图形渲染
于是选择了服务器2,上面的GPU是游戏显卡,全能型选手。于是就遇到了新的坑
2. X11与docker
服务器2是用docker进行管理的,大家都有sudo权限,但相互不影响,每个人都是在一个独立的容器里运行的。
此时试图运行offscreen后的渲染程序,报错xhost: unable to open display ":0.0"
这是由于目前试图在display 0 上显示东西,但是display 0并不是我们当前用户的权限能够调用的
于是果断切换到root用户(输入su,然后输密码即可),并切换到相应的python虚拟环境中运行渲染程序
然后有新的报错:
X11 forwarding request failed on channel 0
解决方法:https://www.cyberciti.biz/faq/how-to-fix-x11-forwarding-request-failed-on-channel-0/
注意ubuntu系统中不是sshd,是ssh,所以在修改完配置文件后,应该输入
/etc/init.d/ssh reload
否则会显示找不到sshd这个文件
如果遇到以下问题,说明当前用户下没有X授权文件(即.Xauthority),
: “X11 proxy: wrong authorisation protocol attempted"
从你的用户目录拷贝到root目录就行了
参考:https://superuser.com/questions/610084/putty-x11-proxy-wrong-authorisation-protocol-attempted
比如
cp /home/name/.Xauthority /root/
总的来说,遇到问题多用英文去搜索,并且要耐下性子去看英文的长篇回答,
不要迷信权威,要多去调查,减少信息不对称
mayavi与X11的一些坑总结的更多相关文章
- Ubuntu16.04安装NVIDIA驱动时的一些坑与解决方案
这几天在新购置的笔记本上部署工作环境,在安装NVIDIA驱动的时候遇到了不少坑,重装了很多次,在Ubuntu论坛以及其他资料源看了很多大牛的分析,最终终于解决了一个又一个问题,过程比较艰辛,所以决定写 ...
- mayavi安装
Mayavi是python的一个包,提供方便的可视化方案.目前(20150809)Mayavi还没有py3的支持,以下安装环境在python 2.7.10下进行 安装Mayavi: 1. 通过pip ...
- JAVA实用案例之文件导出(JasperReport踩坑实录)
写在最前面 想想来新公司也快五个月了,恍惚一瞬间. 翻了翻博客,因为太忙,也有将近五个多月没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六 ...
- 写给正在入坑linux系统的伙伴
光阴似箭,时光如梭,转年出来工作已经3年了.从一个职场新人慢慢熟悉职场的工作方式,适应职场工作的环境,学习了很多知识,也总结了很多经验.现在的目标就是一步一个脚印,慢慢打磨自己,希望早日成为取代其他人 ...
- JasperReport报表导出踩坑实录
写在最前面 翻了翻博客,因为太忙,已经好久没认真总结过了. 正好趁着今天老婆出门团建的机会,记录下最近这段时间遇到的大坑-JasperReport. 六月份的时候写过一篇利用poi文件导入导出的小De ...
- Mediapipe 在RK3399PRO上的初探(一)(编译、运行CPU和GPU Demo, RK OpenglES 填坑,编译bazel)
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- 【填坑】树莓派4B上运行Bullseye版本系统,不能登录xrdp的问题~~
以前使用 buster,安装xrdp后 pi用户xrdp登录正常, 可自从使用了 bullseye系统,pi登录xrdp后,出现黑屏不能登录现象. 网上搜寻解决方案,一种方法是: 登录树莓派后,打开这 ...
- 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑
阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...
- 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例
前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...
随机推荐
- Json 数组传值
1. var _content = {}; _content[_title] = _oldValue + ' -- > ' + statusVal; 2. var eventData = { T ...
- 笔记《JavaScript 权威指南》(第6版) 系统理论知识概要
主要内容概要 [JavaScript语言核心]词法结构,类型.值和变量,表达式和运算符,语句,对象,数组,函数,类和模块,正则表达式的模式匹配,JavaScript的子集和扩展,服务器端JavaScr ...
- 接口压力测试--Jmeter
1.Jmeter简介 JMeter就是一个测试工具,相比于LoadRunner等测试工具,此工具免费,且比较好用,但是前提当然是安装Java环境: JMeter可以做 (1)压力测试及性能测试: (2 ...
- PHP7.X连接SQLSERVER数据库(CENTOS7)
加入微软的源 curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssqlreleas ...
- flask 第七章 简陋版智能玩具 +MongoDB初识和基本操作
1.简陋版web智能玩具 FAQ.py文件 import os from aip import AipSpeech, AipNlp from uuid import uuid4 "" ...
- [转] How Bill Gates read books
Bill Gates is one of the most famous figures in the business world. He is one of the richest men in ...
- DNS区域传送、子域授权
前言 DNS服务器搭建参考上一篇: DNS主从复制,就是将主DNS服务器的解析库复制传送至从DNS服务器,进而从服务器就可以进行正向.反向解析了.从服务器向主服务器更新查询数据,保证数据一致性,此为区 ...
- python-之-深浅拷贝一
深浅拷贝 一.数据为不可变类型 (str.int.bool) import copy v1 = "abc" v2 = copy.copy(v1) v3 = copy.deepcop ...
- dapper.simplecurd
[Table("Users")]//真实表名 publicclass User { [Key] publicint UserId { get; set; } [Column(&qu ...
- win10安装pytorch
安装gpu版本的pytorch需要三个东西:pytorch(torchvision).cuda.cudnn 相信大家都安装过了anaconda,就不介绍anaconda的安装了 1.安装cuda:从官 ...