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

CLion 2018.2 以及之后的版本打开个小项目,随便打字就跑满所有 CPU 核心还特别卡,有什么优化方法吗?

  •  1
     
  •   nyanyh · 84 天前 · 1640 次点击
    这是一个创建于 84 天前的主题,其中的信息可能已经有所发展或是发生改变。
    MBP 2016,16G 内存,10.14.3
    打开个小项目,最大的 cpp 文件只有 1000 行
    CLion 2018.2.7-2019.1EAP 之间的版本都试过了,2018.2 稍微好点,2018.3 开始之后的版本都特别卡
    JetBrains 所有 IDE 都是这个问题,一打字 CLion CPU 占用 300%多,自动补全要 2 秒才能弹出来,300 行的文件代码着色 1 分钟都没出来
    Invalidate Caches 都要按烂了,彻底清除数据重装了好几次都没用

    JVM 配置如下
    -Xms1024m
    -Xmx4096m
    -XX:NewSize=128m
    -XX:MaxNewSize=128m
    -XX:ReservedCodeCacheSize=1024m
    20 回复  |  直到 2019-01-29 13:34:32 +08:00
        1
    mifly   84 天前 via Android
    感觉不像配置的问题,我那 4g 内存的 linux 打字从没卡过,会不会是输入法的问题?
        2
    pwrliang   84 天前 via Android
    好象是后台负责语法高亮的进程导致的,在菜单中使用省电模式吧。
        3
    404neko   84 天前
    妈椰 CLion 也有这个问题么
    VS(没有 Code) 出过 只有重装才能缓解 被逼无奈放弃了
        4
    kokutou   84 天前 via Android
    换 i9 的 mbp
    或者换 9900k 的黑苹果
        5
    luozic   84 天前 via iPhone
    火焰图跟踪一下,看是那占的 cpu 多
        6
    lsmgeb89   84 天前 via Android
    直接找 Jetbrain 反馈问题
        7
    Mitt   84 天前 via iPhone
    有没有开类似有道翻译的软件还开了划字识别的功能的
        8
    zhenjiachen   84 天前 via iPhone
    不要 Invalidate Caches,每次 Invalidate Caches 都会清楚之前简历的缓存和 index,占满 CPU 可能是在 index 你的 include 文件,之后再弄就不会了,缓存建立好之后应该打字就不会卡了
        9
    Wicked   83 天前 via iPhone
    我已经放弃 clion,改用 Xcode 了。毕竟是 native app,续航甩 clion 一条街,熟悉之后也挺好用。clion 都轮不到编译链接,随便改几行字风扇就起飞了。至于那个省电模式,开了之后相当于自废武功,连 vscode 都不如。
        10
    nyanyh   83 天前
    @lsmgeb89 #6 反馈过了,YouTrack 里好几个性能问题,但是都没有后续解决方案
        11
    nyanyh   83 天前
    @Wicked #9 CLion 的 Refactor 好用啊,而且 Xcode 也有不少 bug,代码高亮我这总出问题
        12
    Wicked   83 天前 via iPhone
    @nyanyh 单一功能再好用也抵不过核心功能的缺陷。Xcode 虽然也有问题,但 98%的时间能稳定工作就够了。
        13
    mousebomb   82 天前
    就是因为这种卡顿我才从 AppCode 和 CLion 转到 XCode 了,XCode 比省电模式的 CLion 强不少
        14
    yucao   82 天前
    我是代码提示和着色特别缓慢,不知道为什么,mbp18 高配,害得我已经快会背 api 了...
        15
    yucao   82 天前
    此外尤其是容器操作和类型推导,真的要等 2 秒的感觉
        16
    peyppicp   82 天前   ♥ 1
    -XX:NewSize=128m
    -XX:MaxNewSize=128m
    -XX:ReservedCodeCacheSize=1024m
    你这三个参数配置的有问题吧 为什么新生代要给这么小? 128mb 肯定会导致频繁 gc 新生代啊,CPU 也可能飙升。
    还有-XX:ReservedCodeCacheSize=1024m 为何要这么大,这个只是用来存储编译生成的二进制代码。
    给你我的 golang 参数作为参考:
    -Xms2g
    -Xmx2g
    -XX:ReservedCodeCacheSize=240m
    -XX:+UseCompressedOops
    -Dfile.encoding=UTF-8
    -XX:+UseConcMarkSweepGC
    -XX:+CMSParallelRemarkEnabled
    -XX:+CMSScavengeBeforeRemark
    -XX:+UseParNewGC
    -XX:+UseCMSCompactAtFullCollection
    -XX:CMSFullGCsBeforeCompaction=0
    -XX:SoftRefLRUPolicyMSPerMB=50
    -ea
    -Dsun.io.useCanonCaches=false
    -Djava.net.preferIPv4Stack=true
    -Djdk.http.auth.tunneling.disabledSchemes=""
    -XX:+HeapDumpOnOutOfMemoryError
    -XX:-OmitStackTraceInFastThrow
    -Xverify:none
        17
    nyanyh   82 天前
    @peyppicp #16 使用了你给的配置测试了一下,卡顿少了点,但是多数时间仍然占 300%+CPU,估计是 CLion 自己的问题了,装了个 2016.x 的上古版本一点都不卡
        18
    peyppicp   82 天前 via iPhone
    @nyanyh 不太应该 我 idea goland 基本都是这套配置。2018.2 的,改了 jvm 参数后没卡过。
    考虑修改这两个参数试试?把 jvm 内存加四 g
    -Xms4g
    -Xmx4g
        19
    peyppicp   82 天前 via iPhone
    @nyanyh 而且怎么也不应该这么卡。看看系统的内存压力是不是很高?是不是有内存页被交换到硬盘上了?
        20
    Lattez   81 天前
    基本无解内存不是瓶颈...软件内右下角把级别拉到中等或者关闭会好很多,或者换更好 CPU 配置的台式机用 Windows 或者换 Xcode
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2136 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 19ms · UTC 02:32 · PVG 10:32 · LAX 19:32 · JFK 22:32
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1