恩佐2登录 > SEO培训 > 新宝7恩佐登录如何在看不懂算法代码的情况下等价的优化算法?

新宝7恩佐登录如何在看不懂算法代码的情况下等价的优化算法?

admin SEO培训 2020年02月11日

  最近在修改公司的博士写的代码(博士是数学系的),算法的代码没有看的太懂。然后在改写的过程中会发现各种结果不一样,不得不回去看原来的代码。有没有什么方法可以在不看懂原来的代码的情况下,进行等价优化。

  如果懂了模型并了解其中各参数的作用,还是有一定可能看不懂代码,但可以调试出好结果的。因为如果代码是完全按照模型写而并没有trick在里面的话,那么重要的是模型参数,而不是代码的具体实现过程。毕竟很多数学上一行带过的公式,其代码实现会特别的冗长,在只关注结果的前提下,可以不去关注它们是具体怎么实现的。

  这就相当于软件测试中的黑盒子测试,测试者并不知道软件内部模块结构等,仅通过其提供的参数借口去尽可能的尝试不同组合已发现潜在的bug。而这就要求测试者对该软件的模型有一定了解。

  再针对性优化,每一步都要运行单元测试,过程中顺手重构程序流程,该提取子函数的,该修改变量名的,该添加注释的,该添加辅助函数的等等。

  如果可以,先设定优化目标,先写好性能测试,恩佐2登录修改优化代码,直到满足性能测试后结束。新宝7恩佐登录

  Web/移动/Mac开发、心理学、用户体验、平面/动画设计、视频剪辑、后期特效、3D

  作为一个Berkeley的学生,表示我们的机器结构61C的第三个project,就是要我们优化一个看不懂算法的。。。

  嗯,这个project要我们优化一个神经网络识别猫的算法,要把250Cats/s提速到3K+Cats/s,最后我们是这样优化的,把用到的参数都弄出来,为每种特定的函数写一个Specialized Function,然后把循环展开,使用Intel提供的AVX寄存器的功能每次计算4个浮点数(这个可以在

  找到),然后使用OpenMP使得程序在线程层面上进行Parallel Computation。

  假如不懂原理的话你能做的事情并不比编译器多多少,至多是参考JIT用profile优化一下数据结构。别的。。。人干不过现代编译器

标签: