概要

我们已经熟练掌握了在断开SSH时保持程序运行的方法:

  • 通过nohup启动程序;
  • 使用&让程序运行在后台;
  • 在tmux/screen等终端复用器中启动程序。

但倘若我们在程序已经运行之后,才发现程序需要运行非常久,此时除了悔恨,还有补救办法吗?

有,本文将详细介绍补救的方法。

- 阅读剩余部分 -

目标

定时将DirectAdmin数据自动备份至其他机器(如另一个DirectAdmin服务、VPS或FTP中)。

概要

DirectAdmin自带备份能力,但普通账户不支持定时备份,更无法支持异地备份;一些商家的DA支持定时备份插件(JetBackup),无法配置,不支持异地备份。

本文讨论 (1) 定时异地保存JetBackup备份文件的方法;以及(2)定时触发DirectAdmin备份并保存到别处的方法。

- 阅读剩余部分 -

概要

DirectAdmin等虚拟主机面板与时俱进,目前不仅支持PHP等脚本程序,也可支持Python甚至NodeJS等常驻内存的服务。常驻内存服务最大优势在于“可将大量数据一次性读入内存,无需重度依赖MySQL、Redis等外部存储”。举例来说,若需记录最近访问网站的IP,传统PHP需要将每次访问网站的IP记录至MySQL或Redis中;而借助Python/NodeJS,则直接设置相关全局变量即可。

本文主要讨论如何在DirectAdmin虚拟主机面板中配置并运行Node.js程序(以Express.js为例)。

- 阅读剩余部分 -

背景

Ubuntu 22.04起停止支持gcc-8,仅支持gcc-11及更新的版本,且其GLIBC版本高达2.34(2021年发布),GLIBCXX版本则为3.4.21(2017年,随gcc-5发布)。因此理论上所有早于2021年的系统均无法直接运行,包括不限于Debian 11、Ubuntu 20.04、CentOS 7、AlmaLinux 8等,杀伤力过大。本文给出一种编译方案,让程序可在当代主流系统中运行,如Debian 10、Ubuntu 18.04等。

- 阅读剩余部分 -

概要

Float指单精度浮点数,又称为FP32,由IEEE-754定义,大小为32位/4字节;同理,FP16是半精度浮点数也由IEEE-754定义,大小为16位/2字节。两者均用2为底的科学技术法表示数字,因此的格式相仿,均由符号位、指数位(exponent)和尾数位(mantissa)组成,且符号为均占1比特,但FP32的指数位和尾数位各占8比特和23比特;FP16则各占5比特和10比特。

FP32: |符号1b| 指数8b | 尾数23b |
FP16: |符号1b| 指数5b | 尾数10b |

Nvidia GPU、新一代Intel CPU(支持AVX-512)均提供了对FP16运算的原生支持,但AMD芯片、Intel 2022年之前的芯片均无法直接对FP16进行计算,因此我们需要想办法快速将FP16转换为FP32,而后以FP32形式进行计算。

本文记录常见CPU上较优的FP16<->FP32方案。

- 阅读剩余部分 -