lyq1996
lyq1996
你解决了吗?看起来根本就没走v2ray的DNS proxy
@junguoguo2017 @yzchan 试试在boot arg加上 `-ctrsmt `开启3-way SMT spoofing,把小核心识别成大核的一个线程(逻辑核心)。超线程开启时,12600k会识别成6C16T(`3 x 4 + 2 x 2` :4个大核有3个逻辑核心,2个大核有2个逻辑核心)。 因为根据作者的推测:[Speculation about performance ](https://github-com.translate.goog/b00t0x/CpuTopologyRebuild/wiki/%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E6%8E%A8%E5%AF%9F?_x_tr_sl=ja&_x_tr_tl=en) 这样做之后单核跑分时cpu拓扑选择的逻辑核的顺序为:P→P→E,跑分进程可以被认为一直在大核的逻辑核心上切换,基本不会切换到小核心运行,所以单核分数会高很多。多核跑分不影响,因为全部核心都会一起工作。
我上面说的逻辑核心切换是指进程被迁移到不同的CPU核心,而不是一直在一个CPU上运行。但是Linux的软CPU亲和性机制本身就会尽力保证在同一个CPU核上运行,但也只是尽力,除非手动绑定进程到指定CPU核上(硬亲和性)。XNU我不太清楚,好像没有([Is there a way to set processor affinity?](https://developer.apple.com/forums/thread/107524))?见我下面的图片,比如一个进程一直执行while (true);循环,它并不会一直占用固定的一个核心,a.out占用了100,但是被分配到6个核上。  同时我也做了一些测试,`CpuTopologyRebuild`加上`-ctrsmt` boot arg,分配了8个核心的windows虚拟机geekbench 5多核心跑分直接提升20%(4568/5909=0.773),单核心跑分不变(和作者结果不一样)。   将小核视为大核的逻辑核心,优先保证真正大核被使用,跑编译要起飞咯🛫️,爽!!!
Hi, does anyone have a solution? It seems that the "host" network uses the container's host (which is a Linux VM) network instead of the macOS network.