先说个糟心事儿。上个月一个同行的朋友找到我,他们公司收到了MathWorks的合规审计函——起因很不起眼:某外包项目组里有两个驻场工程师,用的是公司内网环境跑仿真,账号是从正式员工那里"借"来的Named User许可。结果审计一查,超范围使用,补罚款、补授权、出律师函,一整套下来比当初老老实实买授权贵了三倍不止。
这不是个例。这两年MathWorks在中国的合规审计明显收紧,尤其是制造业、汽车电子、通信、军工配套这些研发重度依赖MATLAB/Simulink的行业。如果你负责企业的IT资产或者研发平台,这篇就当是我这几年踩坑攒下来的实操笔记。
很多企业上到CIO、下到采购,对正版化的理解还停留在"花钱买够人数就行"。但MATLAB的许可模型比Office复杂一个量级,根源问题有三条:
一句话总结:MATLAB正版化的难点不是预算,是搞清楚谁在用、用什么、怎么用。
是什么:买了Concurrent License之后,所有人都往一个池子里挤,觉得"反正大家不会同时用"。
为什么踩:Concurrent是按"同时签出的密钥数"计费的,不是按人头mathworks.com。但研发高峰期(项目结题前、联调阶段)大家就是要同时开工,于是有人开着MATLAB挂机不关、有人周末忘记退出会话,并发池被闲置会话占满。
后果:要么直接Error 4整个组停摆,要么被迫追加购买并发数,白花钱。Concurrent许可的单价本身比Individual高,买多了更浪费。
是什么:FlexNet的MLM daemon默认不会自动回收闲置会话,用户开着MATLAB去开会、吃饭、下班,license就一直被占着。
为什么踩:TIMEOUT需要在license server的选项文件MLM.opt里手动配置,很多人压根不知道这个文件存在mathworks.com+1。而且TIMEOUT的最小值是14400秒(4小时),低于这个值不生效,很多人配了发现没效果就直接放弃了。
后果:10个并发可能实际只有4-5个真正在干活,剩下的都被僵尸会话占着。这是零成本就能解决的浪费,但90%的企业没做。
是什么:把公司买的许可借给外包商用、让员工在家用电脑上激活公司许可跑项目、子公司共用母公司的license server。
为什么踩:MathWorks的EULA限制得很清楚——许可使用者必须是Licensee的正式员工,硬件必须是Licensee的资产itassetmanagement.net。外包哪怕驻场、哪怕用你发的电脑,都不算。学术版(TAH/Campus-Wide)更是明文禁止任何商业用途uni-wuppertal.de+1。很多人以为"反正是我买的"就能随便用。
后果:这是审计里最容易被抓、罚款最狠的一类违规。MathWorks近年通过云端License Center + IP/主机指纹分析已经能自动发现跨主体使用gofarlic.com。我见过一家企业因为外协团队共用license server,被追溯补购+罚款接近七位数。
是什么:采购按"研发部有80人就买80套"来下单,从来不看实际使用率。
为什么踩:MATLAB的license key签出、归还数据都写在license server的log文件里,默认每次重启还会覆盖mathworks.com。没有专人去解析这些日志,采购和IT就是两眼一抹黑。
后果:我们摸底过的企业里,平均使用率普遍在30%-50%,工具箱层面更惨——不少企业为某个五年前的项目买过Simulink Coder或HDL Coder,项目结束就再没人用过,每年维保费照样交。80套里面可能有30套是纯浪费。
不做这一步,后面全是瞎打。
lmutil lmstat -a -c license.dat拉取实时签出状态mathworks.com。Windows下用LMTOOLS的"Perform Status Enquiry"也行。更重要的是把license manager的log文件改成append模式,积累至少4-8周的连续数据。产出物:一份《许可使用率报告》,这是后面跟老板要预算、跟MathWorks谈判的唯一硬通货。
这一层一分钱不花,但通常能"变出"20%-40%的有效并发。
MLM.opt里加一行TIMEOUTALL 14400(或针对单个feature写TIMEOUT MATLAB 14400),重启lmgrd生效。最低4小时,配得再短也没用mathworks.com。摸底数据出来之后,才能动这一层。
如果企业MATLAB席位超过50个、跨多个研发部门,靠人肉解析lmstat输出撑不了多久。
| 方案 | 前期成本 | 年维保/订阅 | 效果 | 适用场景 |
|---|---|---|---|---|
| 什么都不做(现状) | 0 | 按现有授权交 | 审计风险高,浪费大 | 摸底阶段不建议 |
| 摸底 + TIMEOUT + Borrow(纯配置优化) | 0 | 不变 | 有效并发提升20-40%,零支出 | 所有企业,必做 |
| Individual + Concurrent混合采购 | 中(需重新谈判) | 降低10-30% | 按真实使用模式匹配,浪费显著减少 | 30-100席位的研发团队 |
| 按工具箱精简续约 | 0 | 降10-25% | 砍掉僵尸工具箱的维保 | 所有人,尤其是历史包袱重的 |
| 部署OpenLM / OpeniT | 中(license+实施) | 年订阅 | 持续可视、可审计、可预警 | 50席位以上、跨部门的大型企业 |
| 全面转MATLAB Online/云端 | 低(订阅制) | 按需 | 部署轻、易管理,但网络依赖重 | 分布式团队、外包协作场景 |
某中型汽车电子企业(化名"华东某Tier1"),研发部180人,MATLAB相关授权分布是:40套Individual许可 + 20把Concurrent + 一堆工具箱,年license+维保支出约280万。
摸底发现的问题:
整改动作(按上面四层路径):
结果:第一年合规风险清零,license总支出从280万降到212万(降24%),同时研发峰值期再也没有因为license不够卡住过——因为有限的并发真的用在了干活的人手上。