对应用进行并行加速这个工作,比较偏工程一些,如果对于博士从事这个方向的同学来说,如果想发论文,一般从哪些方面着手,找一些创新点?因为一边是具体的应用领域,一边是计算机领域的并行优化,其实是一个交叉的方向,如果权衡这两方面?
清华大学计算机系副教授都志辉:
这个问题比较通用,干我们这一行的很多人都有同感。我要给你一点建议是:其实对于我们一开始做优化的人来说,可能上来的想法是我如何把性能提高就行了,如果你想在博士期间做这件事情,想发论文,想找创新点,我觉得不是一上来就想着怎么去优化的问题,而是要先多想想问题的本质在哪里,别人是怎么做的,为什么不行,你打算怎么做,这个方法为什么可以或者你觉得他为什么有可能不行,在优化之前或者是优化过程中,如果你把这些问题都弄明白了,那么你动手有了优化结果后,也就意味着你写的文章或者是你的创新点也比较容易找到了。
我们之前也犯过毛病,那时候我们觉得反正有这么一个任务,想着快点完成就行了,然后这样弄完之后,你只能说我把这性能提高了多少倍,但是有很多问题都没有想清楚,比如你这么做比别人做有什么好处,为什么不用别的方法,有没有更好的方法,你这个方法的极限和瓶颈在哪等,可能都没有想清楚,所以如果想发论文或者是找创新点,那就在动手之前先多考虑考虑,多问些问题。这就是我的一点建议。
对于权衡这方面,首先你说的非常对,如何去权衡目前确实没有特别好的办法,只能硬着头皮去做,在做应用领域时就得先把应用问题搞清楚,如果搞不清楚就不可能把这个优化做好,这是我的一点体会。
问题来源