V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wildlynx
V2EX  ›  分享发现

在 SMR 笔记本硬盘上编译大项目真的很恶心

  •  1
     
  •   wildlynx · 2022-02-12 20:38:02 +08:00 · 2457 次点击
    这是一个创建于 1046 天前的主题,其中的信息可能已经有所发展或是发生改变。

    手上一台公司配的 HP 笔记本,配置如下: intel 10210U CPU 16GB RAM 128G SSD 系统盘 1T SMR 机械硬盘

    SSD 硬盘基本没什么空间,只能在机械硬盘存开发项目。 使用 VS2017 编译公司一个中型的医疗相关的 C++项目,时不时会 VS 僵死。编译一个修改的 C++小文件也要花很久。编译过程中,CPU 占用率不算高,内存占用也低。另外 SMR 机械硬盘的占用没有超过 50%。

    有人遇到上述的问题吗?

    19 条回复    2022-05-09 14:13:20 +08:00
    jim9606
        1
    jim9606  
       2022-02-12 20:47:17 +08:00   ❤️ 1
    跟公司商量换硬盘吧,这个没啥办法,SMR 额外忌讳小文件写入。
    128G+1T 典型坑企业采购的组合,真不如一个 512G SSD 。
    kokutou
        2
    kokutou  
       2022-02-12 20:49:28 +08:00 via Android
    单核满了吧,任务管理器看看 CPU 分核心的占用率看看
    wildlynx
        3
    wildlynx  
    OP
       2022-02-12 21:14:50 +08:00   ❤️ 1
    @jim9606 的确是垃圾配置
    @kokutou 单核没有满
    AX5N
        4
    AX5N  
       2022-02-12 21:21:30 +08:00   ❤️ 1
    你怎么证明是 smr 硬盘的问题,你把这些文件全部读入内存就要花很长的时间?
    ilylx2008
        5
    ilylx2008  
       2022-02-12 21:33:02 +08:00
    自己换个 240g 固态,200 块钱就能解决的事。。
    guowq
        6
    guowq  
       2022-02-12 22:08:54 +08:00
    实在不行京东买个垃圾 nvme ,套个硬盘盒,接口 3.0 以上都很舒服,千万记得勤备份
    kkocdko
        7
    kkocdko  
       2022-02-12 22:09:59 +08:00 via Android
    首先要确定是不是硬盘的问题,还是建议丢到 SSD 尝试一下。我不相信 128G 的 SSD 会没位置放项目,挪一挪总能腾出位置,足够尝试一下的。
    elfive
        8
    elfive  
       2022-02-12 22:27:55 +08:00 via iPhone
    VS 本身多核(多线程)编译就拉垮,碰到的还是 C 和 C++,就意味着编译速度还和你们项目架构有很大关系,如果多采用 include 而非前置声明这种方式或者大量的模板类或者一个 cpp 动不动上千行代码就会有这样的问题
    archxm
        9
    archxm  
       2022-02-12 22:46:05 +08:00
    @guowq
    2.5 的 ssd 套壳更便宜吧。
    nvme 的壳太贵了,100 以上了。2.5 的壳才 20 多块钱。
    learningman
        10
    learningman  
       2022-02-12 23:11:20 +08:00
    要不开个 2G 的内存盘?
    qaweqa
        11
    qaweqa  
       2022-02-12 23:28:15 +08:00
    我感觉你这个大概率不是硬盘问题 反而可能是 cpu 太烂了
    mason961125
        12
    mason961125  
       2022-02-13 03:43:10 +08:00   ❤️ 2
    编译这种大量小文件随机独写的负载使用 HDD 确实会变得很慢,但是建议使用 控制变量法 来逐个排除找出问题,不然盲目的解决大概率是要花冤枉钱的。

    再说了,公司发的电脑,如果慢那就慢,leader 说你进度慢?我编译就这速度,不然你给我换电脑?
    wildlynx
        13
    wildlynx  
    OP
       2022-02-13 07:56:52 +08:00
    @elfive C 盘已经 windows 10 占了大部分空间了
    elfive
        14
    elfive  
       2022-02-13 08:25:30 +08:00 via iPhone
    @wildlynx 代码放 C 盘,中间目录指向一个内存盘,既不怕断电开关机丢数据,又有 SSD 的速度
    siknet
        15
    siknet  
       2022-02-13 10:01:33 +08:00
    弄个二手 m.2 加二手硬盘盒,稳妥
    ch2
        16
    ch2  
       2022-02-13 11:09:05 +08:00 via iPhone
    代码本身占不了了多少空间,你把体积大的静态资源外置单独放在机械硬盘里,.cpp 这些代码放到 ssd 里,做一下区分就行了
    Cu635
        17
    Cu635  
       2022-02-13 11:22:27 +08:00
    @ilylx2008
    公司给配的电脑,当然要找公司解决问题啊。

    @kkocdko
    win10+vs 的话,128G 真的不算大……
    ilylx2008
        18
    ilylx2008  
       2022-02-13 15:55:37 +08:00
    @Cu635 自己解决省事省时间,也就 200 块,自己用的爽就行。
    luoshengdu
        19
    luoshengdu  
       2022-05-09 14:13:20 +08:00
    SMR 叠瓦技术的特性:在磁盘容量满了之后,再次写入时才会感觉到慢。
    恢复性能的办法也很简单,重新把盘格式化一次 /做 碎片整理都可以

    所以在你新盘使用过程中,是不会慢的,它的写入性能同 pmr 盘一样
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3073 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:54 · PVG 20:54 · LAX 04:54 · JFK 07:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.