生成符合 EUI-64 标准的 IPv6 地址

概述

本软件旨在帮助用户生成符合 EUI-64 标准的 IPv6 地址,特别适用于家用动态 IPv6 环境。用户可以通过提供最新的公网 IPv6 前缀(通过输入域名或 IPv6 地址),与指定的 MAC 地址组合生成完整的 IPv6 地址。软件提供了便捷的设置功能,支持管理常用的 IPv6 前缀、域名/IPv6 地址列表以及 MAC 地址,同时允许为 MAC 地址指定别名。

功能

  • 自动解析域名以获取最新的公网 IPv6 前缀。
  • 提供用户设置和管理常用的 IPv6 前缀和域名/IPv6 地址列表。
  • 支持输入和管理多个 MAC 地址,并允许为每个 MAC 地址指定别名。
  • 将 IPv6 前缀与 EUI-64 后缀组合生成完整的 IPv6 地址。

注意事项

  • 动态前缀的限制:如果 config.json 中设置的是固定的 IPv6 前缀而不是域名,则软件在生成 IPv6 地址时会使用该固定前缀。这样无法实现每次生成的 IPv6 地址都是最新的公网 IPv6 地址。只有使用域名解析时,软件才能自动获取最新的公网 IPv6 前缀并进行地址组合。
  • 确保输入的 MAC 地址符合标准格式。

使用方法

  1. 设置常用的 IPv6 前缀和域名/IPv6 地址

    • 在 config.json 中添加或编辑常用的 IPv6 前缀及域名/IPv6 地址列表,方便快速选择。
  2. 设置和管理 MAC 地址

    • 输入 MAC 地址并可为其指定便于识别的别名,例如:
      • 00:1A:2B:3C:4D:5E 别名:家庭PC
    • 支持添加和删除 MAC 地址。
  3. 生成 IPv6 地址

    • 选择预设的 IPv6 前缀或输入域名/IPv6 地址,以及指定的 MAC 地址,软件将生成符合 EUI-64 标准的完整 IPv6 地址。

示例

示例 1:使用域名/IPv6 地址和已保存的 MAC 地址生成 IPv6 地址

  • 域名/IPv6 地址:example.com 或 2001:db8::
  • MAC 地址(别名:家庭PC):00:1A:2B:3C:4D:5E
  • 生成结果:2001:db8::21a:2bff:fe3c:4d5e(视解析结果而定)

系统需求

  • Python 3.6 或更高版本
  • 适用于 Linux、Windows、macOS 系统

安装

克隆项目并安装依赖项:

使用

运行软件并根据提示管理 域名/IPv6 地址和 MAC 地址:

许可证

本项目采用 MIT License 许可证开源。

联系

如有问题或建议,请联系 [haobinnan@gmail.com] 或访问 GitHub 项目页面

曾经被取消,现在又卷土重来!AVX-512到底有何魅力?

7月25日,英特尔发布了新的 APX(高级性能扩展),同时还披露了新的 AVX10,它将首次为 P 核和 E 核提供统一的 AVX-512 功能支持。也标志着被英特尔在12、13代酷睿中枪毙的AVX 指令集运算功能回归。AVX-512为何能卷土重来?

不得不提的ALU
在了解 AVX-512 指令集之前,有必要先了解一下 ALU 的工作原理。

顾名思义,算术处理单元用于执行数学计算任务。这些任务包括加法、乘法和浮点计算等运算。为了完成这些任务,ALU 使用由 CPU 时钟信号驱动的特定应用数字电路。

因此,CPU 的主频就决定了 ALU 处理指令的速度。因此,如果 CPU 的时钟频率为 5GHz,那么 ALU 在一秒钟内可以处理 50 亿条指令。因此,CPU 的性能会随着时钟频率的提高而提高,但CPU 产生的热量也会增加。

那么,新一代处理器如何提供比旧版处理器更好的性能呢?人们开始利用并行概念来提高性能。这种并行性可以通过使用多核架构来实现,即使用多个不同的处理内核来提高 CPU 的计算能力。

另一种提高性能的方法是使用 SIMD 指令集。简单地说,“单指令、多数据”的指令方式,可以让 ALU 在不同的数据点上执行相同的指令。这种并行方式可以提高 CPU 的性能,AVX-512 就是一种 SIMD 指令,用于提高 CPU 在执行特定任务时的性能。

什么是 AVX-512,它如何工作?
AVX 512 指令集是 AVX 的第二次迭代,于 2013 年进入英特尔处理器。作为高级矢量扩展(Advanced Vector Extensions)的缩写,AVX指令集最早出现在英特尔至强Phi(Knights Landing)架构中,后来在英特尔服务器处理器Skylake-X CPU中使用。

此外,AVX-512 指令集通过 Cannon Lake 架构进入基于消费类的CPU,后来又得到 Ice Lake 和 Tiger Lake 架构的支持。

该指令集的主要目标是加速涉及数据压缩、图像处理和加密计算的任务。AVX-512 指令集的计算能力是旧版指令集的两倍,性能大幅提升。

那么,英特尔是如何将使用 AVX-512 架构的 CPU 性能提高一倍的呢?

如前所述,ALU 只能访问 CPU 寄存器中的数据。高级矢量扩展指令集增加了这些寄存器的大小。

由于寄存器容量的增加,ALU 可以在一条指令中处理多个数据点,从而提高了系统性能。

就寄存器大小而言,AVX-512 指令集提供 32 个 512 位寄存器,与旧版 AVX 指令集相比增加了一倍。

因此,只需执行一条指令,就可以同时进行多项操作,而不必以标量方式(即逐个数据)进行操作。例如,可以同时对 8 个 64 位数据或 16 个 32 位数据进行操作,等等。

英特尔为什么要终止 AVX-512?
如前所述,AVX-512 指令集具有多项计算优势。事实上,像 TensorFlow 这样的流行AI开发库都使用了该指令集,以便在支持该指令集的 CPU 上提供更快的计算速度。

而对于浮点运算极度依赖的加密解密计算、文件压缩和解压缩、音频视频编码解码以及复杂的3D渲染来说,AVX-512的性能提升是比较大的。也就是说,对生产力用户来说,只要软件支持,那么AVX-512对性能提升是很明显的。

即使是对于3A大作,由于复杂的3D和AI计算,这种并行指令集对帧率的提升也是有帮助的。而诸如游戏主机模拟器等虚拟化计算场合,其意义也非常大。

那么,英特尔为什么要在最近的12、13代酷睿处理器上禁用 AVX-512呢?

因为这两代处理器与英特尔生产的旧处理器不同。旧系统使用的是运行在同一架构上的内核,而这两代酷睿处理器使用的是两个不同的内核,也就是异构运算技术。Alder Lake 处理器中的这些内核被称为 P 核和 E 核,采用不同的架构。

P 核心使用 Golden Cove 微架构,而 E 核心使用 Gracemont 微架构。当特定指令能在一种架构上运行而不能在另一种架构上运行时,这种架构上的差异就会妨碍调度程序的正常运行。

在 Alder Lake 处理器中,AVX-512 指令集就是这样一个例子,因为 P 核心拥有处理该指令的硬件,而 E 核心却没有。

因此,Alder Lake 处理器不支持 AVX-512 指令集。

尽管如此,AVX-512 指令仍可在某些英特尔未将其物理融合的 Alder Lake CPU 上运行。要做到这一点,用户必须在 BIOS 中禁用 E 核。

相反,由于采用非异构运算结构,AMD在Ryzen7000 CPU上,反而支持起了AVX-512,似乎也是一种小小的讽刺。

AVX10如何恢复AVX-512支持?
新的 AVX10 ISA 并不支持英特尔当前一代的 CPU,但它使英特尔同时拥有 E 核和 P 核的芯片仍然支持 AVX-512,尽管 512 位指令只能在 P 核上运行。同时,融合的 256 位 AVX10 指令可以在 P 核或 E 核上运行,从而使整个芯片仍然支持 AVX-512 功能。

不过,e-cores 将仅限于融合 AVX10 的最大 256 位向量长度,而 P-cores 可以使用 512 位向量。这感觉类似于 Arm 的 SVE 对可变向量宽度的支持。

AVX10 推出后,英特尔将冻结 AVX-512 ISA,今后 AVX-512 指令的所有使用都将通过 AVX10 ISA 进行。

使用Python生成BaiduPCS工具的百度网盘秒传信息

有一次想使用百度网盘自带的Windows客户端上传一些大量音乐文件,这些音乐文件其他百度网盘用户肯定早都上传过,所以基本这些文件不会占用太多网络上传带宽,但是百度网盘自带的Windows客户端计算文件的md5过程非常慢,估计是为了避免计算md5过程影响电脑整体性能,所以故意没有开全速计算,后来利用BaiduPCS命令行工具进行上传,所以写了一个Python代码进行md5计算,计算过程可以达到磁盘的峰值速度。

惠普 HP Laser MFP 136nw 打印机通电提示 “Wait Image”

闲的没事儿时打开了惠普的打印机服务页面,发现有136nw打印机最新的固件,随手下载并且通过Web页面方式更新固件,以前一直都是这么操作的没有发现任何问题,但这次大概卡住了能有20分钟,感觉异常然后我就给打印机强制重启,当再次通电后打印机屏幕显示“Wait Image” 并且打印机Web管理页面也无法登录了,咨询惠普官方,他们说没有办法让联系当地售后网点进行维修,据咨询维修打印机人员说这种情况需要更换打印机主板,说需要几百元,我心想应该不至于更换主板吧,电脑主板BIOS刷死也不至于更换主板啊,顶多用编程器刷写下BIOS就行了,因为当初下载固件的时候发现固件包中有一个exe(需命令行运行),因为我的打印机一直都是通过WiFi链接(没有使用USB数据线),然后找到打印机自带的USB数据线连接后,使用官方提供的那个工具,在CMD中运行并且传递需要刷写的固件文件路径,发现打印机屏幕有反应了,经过短暂等待,打印机彻底满血复活,写出本过程的目的是为了避免和我类似情况的朋友们免得让某些所谓维修工给坑了。
总结:惠普官方的电话客服也不是很懂,正常来说他们应该引导用户去使用固件包中的工具进行补救,我觉得打印机提示这个 “Wait Image”就是进入了所谓的恢复模式,翻译过来就是等待固件镜像文件,只是通过USB数据线将固件文件传递过去就万事大吉了,省了好几百。或者官方客服懒得提示用户这么操作,就直接引导至维修站。
官方工具名称:usblist2.exe

四十年的轮回!Intel Core i7-8086K

纪念8086处理器40周年 Intel推出首款5GHz的酷睿i7处理器

1968年7月18日,从仙童半导体公司离职的戈登•摩尔、安迪•格鲁夫和罗伯特•诺伊斯三人,仅花了5分钟就游说到250万美元的资金,创立了Intel公司,开始了一段缔造传奇的历程。

(尔后一年,同样是从仙童公司出来的杰瑞•桑德斯,花了500分钟才终于游说到150万美元,创立了AMD公司)。

十年后的1978年的6月8日,Intel公司推出了第一颗兼容型的通用16位8086处理器,这颗只有40个针脚、29000个晶体管的处理器就是日后所有IBM及兼容PC处理器的祖先,也是X86构架的源头。
40年后的2018年6月8号,为了纪念这颗开创历史的8086处理器,Intel公司推出了最新的第八代酷睿 i7-8086K处理器,全球限量50000颗。

40年的时间,变化可以用天翻地覆来形容。处理器的晶体管数量从原来的29,000个增长到10亿以上;制程工艺从3微米(3000纳米)提升到了14纳米;频率从5MHz提高到目前的5GHz;运算能力从0.33 MIPS(百万条指令每秒)提升1000,000 MIPS。

现在来说说今天的主角--酷睿i7-8086K处理器。

i7-8086K基于八代酷睿Coffee Lake构架,14纳米工艺制造,核心面积约150平方毫米,拥有六个核心十二线程,睿频加速达5GHz,这也是Intel史上第一颗默认能跑到5GHz频率的处理器(虽然只是单核睿频),TDP为95W。