TypechoJoeTheme

MetMan's Blog

网站页面
搜索到 116 篇与 的结果 ———只是一个默认分类
2024-11-03

MPI4PY实现探究

MPI4PY实现探究
前言MPI C/Fortran P2P通信一般需要指定<数据首地址,数据类型,数据数目>三元组信息,根据三元组信息可以通信一段连续内存数据(MPI派生类型允许内存不连续数据一次通信完成,但底层实现仍然要求发送内存连续数据)。mpi4py是MPI的Python绑定。如果你对Python标准实现Cpython有了解的话,Python对象都不是一个简单的“裸”数据,Python对象在Cpython实现中一般是一个C结构体,比如Python列表对象如下所示:typedef struct { PyObject_VAR_HEAD /* Vector of pointers to list elements. list[0] is ob_item[0], etc. */ PyObject **ob_item; /* ob_item contains space for 'allocated' elements. The number * currently in use is ob_size. * Invariants: ...
2024年11月03日
81 阅读
0 评论
2024-11-03

数学公式识别软件SimpleTex

数学公式识别软件SimpleTex
当需要编辑大量数学公式时,如果有一款软件能够识别公式图片自动生成Latex/Word公式,这将极大的减少我们的工作量。最近在网上找到SimpleTex这款软件,支持自动识别图片公式、手写板公式识别功能,试用一段时间感觉还可以。项目地址:https://simpletex.cn/SimpleTex目前提供Win和Mac平台软件安装版,也提供网页版功能(https://simpletex.cn/ai/latex_ocr),可以先在网页上试用,满足需求的话可以考虑安装本地软件版本。注意软件要联网使用使用方法截图识别SimpleTex内置了截图软件,不过我是使用的Snipaste截图软件。对公式截图后在软件界面内,Ctrl+V粘贴公式截图,SimpleTex自动翻译成Latex公式。比如截图公式示例:Ctrl+V粘贴到SimpleTex中即时识别可以选择LaTex复制样式,比如我在笔记软件中希望公式是$$...$$格式的。如果是在Word中使用,可以选择对应的选项复制粘贴到Word中。手写板功能可以通过手写板功能写公式,然后通过SimpleTex生成对应的Latex或者Word公式。识别...
2024年11月03日
97 阅读
0 评论
2024-09-22

Linux服务器数据备份迁移

Linux服务器数据备份迁移
需求笔者需要将一台服务器上的所有数据备份到另一台服务器上。由于数据量比较大,需要长时间传输。为了防止登录远程服务器可能中途断开连接,考虑使用tmux + rsync组合进行数据备份迁移。用法首先确保备份服务器空间足够,避免传输过程将服务器存储空间用满情况。启动tmux$ tmux new -s backup 创建一个backup的tmux会话,并进入会话中。执行rsync备份在backup会话环境中执行以下命令$ mkdir BACKUP_DIR # 创建备份目录 $ rsync -avz --exclude={'*.o','*.mod','p4/*'} remote_user@remote_ip:/path/to/need/backup/dir/ BACKUP_DIR # 输入remote服务器用户密码其中rsync命令选项意义:-a 存档模式-v 命令执行详细信息-z 在传输过程中压缩数据--exclude 排除匹配模式文件/目录传输,以上设置不传输*.o和*.mod编译临时生成文件以及p4目录,根据自己需要进行设置。使用SSH协议传输数据,remote_user@r...
2024年09月22日
181 阅读
0 评论
2024-09-22

交互式登录shell

交互式登录shell
本文是上一篇文章[[TMOUT引起服务器断开连接解决方法]]的附带研究产物。TMOUT环境变量在Bash Beginners Guide的解释如下:If set to a value greater than zero, TMOUT is treated as the default timeout for the read built-in. In an interative shell, the value is interpreted as the number of seconds to wait for input after issuing the primary prompt when the shell is interactive. Bash terminates after that number of seconds if input does not arrive.TMOUT设置首先对read命令会产生影响,如果在指定时间内没有输入,Bash会退出read语句输入环境。其次,TMOUT会对交互式(interactive)shell产生影响,如果主提示符(P...
2024年09月22日
230 阅读
0 评论
2024-08-10

TMOUT引起服务器断开连接解决方法

TMOUT引起服务器断开连接解决方法
服务器管理员为了系统安全性和减少开销,一般会设置一定时间内shell没有活动自动断开连接。但如果设置时间过短,查查资料/休息下,再回终端工作发现已经退出登录是挺烦恼的。那么如何绕过这个限制保持SSH会话长时间在线?TMOUT变量首先我们要确认管理员如何实现该功能的。原先我以为自动断开连接是通过SSH配置实现的,后来发现是通过shell的TMOUT环境变量实现的。管理员会在系统配置文件/etc/profile中设置TMOUT值,并将其设为只读变量。export TMOUT=1200 # 保持在线1200秒,不活动退出 readonly TMOUT普通用户没有权限unset这个只读变量,这样用户就不能关闭这个自动退出功能了。$ unset TMOUT -bash: unset: TMOUT: cannot unset: readonly variable解决方法方法一一种解决思路是保持shell繁忙,可以在~/.bashrc加上一段代码:# ~/.bashrc alias bs="while sleep 1000; do printf '\33[0n'; done&...
2024年08月10日
269 阅读
0 评论
2024-08-10

C面向对象

C面向对象
五星上将麦克阿瑟曾说过:“不是C不能OOP,而是C++更有性价比”。面向对象编程是一种编程思想,不和具体的语言工具绑定,但有些语言在语法层面支持使得面向对象编程实现更容易,比如C++,Python。我们常说C语言是一门面向过程的语言,但实际上也可以通过C结构体、函数指针来模拟实现面向对象编程。本文实例来自《嵌入式C语言自我修养》(王利涛编著)。类的模拟C语言中没有class关键字,但可以用结构体模拟一个类(C++中类定义也可以用struct),结构体成员类似C++类中属性,成员函数使用结构体中内嵌函数指针来模拟。// animal.c struct animal { int age; int weight; void (*fp)(void); //函数指针模拟成员函数 };类似于C++的类定义// animal.cpp class Animal { public: int age; int weight; void speak(void); //类方法 };如果需要模拟类的多个方法,一个结构体中需...
2024年08月10日
132 阅读
0 评论
2024-08-10

当Zotero遇见了GPT

当Zotero遇见了GPT
Zotero-gpt是一款Zotero插件,利用GPT对文献内容(包括摘要、PDF全文或选择文本)进行提问回答,提高文献阅读效率。安装与设置插件地址: https://github.com/MuiseDestiny/zotero-gpt 从官网下载.xpi格式插件,然后拖动到Zotero软件中即可安装。设置:进入“编辑->首选项->高级->编辑器”中搜索gpt进行设置,主要设置OpenAI API KEY,如果是中转key的话,还需要修改接口地址。使用通过快捷键ctrl+/调出zotero-gpt窗口,ESC退出插件使用。zotero-gpt通过comand tag实现具体功能。插件窗口中彩色小框表示Command tag,代表着一个个插件功能,可以自行设置。鼠标左键长按tag会显示tag内容。比如AskPDF这个tag,定义的内容如下图所示。其中触发词表示在提问框中提问时包含这些词语时,直接使用Enter键会触发对应的tag功能。AskPDF触发词包含本文、这篇文章、论文,你可以自定义其它词语。示例:如果提问的内容不包含触发词,也可以鼠标点击对应的tag手动执...
2024年08月10日
326 阅读
0 评论
2024-07-31

替代RM命令的防误删工具TRASH-D

替代RM命令的防误删工具TRASH-D
前言最近好不容易写了几千行代码,突然担心起会不会发生源代码文件误删掉这件事来^-^虽然使用了GIT进行管理,但没有上传到版本服务器,总感觉不保险,因此研究代替RM命令的工具,将文件“删除”放入到所谓的回收站,而不是彻底的删除,即使误删了也能轻松恢复。在网上找到几款软件,发现trash-cli和trash-d两款软件能够满足需求。但trash-cli对于HPC多分区存储环境不太友好,最终选择了trash-d这款工具。安装项目地址:https://github.com/rushsteve1/trash-d 官方在GITHUB中提供了rpm/deb等安装包。本人使用的机器平台是centos,没有管理员权限,只能安装在个人目录下,从rpm包中抽取可执行文件方式安装。$ rpm2cpio trash-d-19-x86_64.rpm | cpio -idmv $ mv usr trash-d $ vi ~/.bashrc export PATH=/path/to/trash-d/bin:$PATH export MANPATH=/path/to/trash-d/share/man:$MA...
2024年07月31日
255 阅读
0 评论

互动读者

标签云

最新回复

  1. tqymnonccc打酱油
    2024-09-27
  2. toibdpojay打酱油
    2024-09-22
  3. yvctxyevvw打酱油
    2024-09-22
  4. frezhwzwuq打酱油
    2024-09-22
登录
X
用户名
密码