使用第三方库

时间:2017-01-03 21:09:54

标签: f# aleagpu

我有兴趣将Alea GPU与第三方库一起使用,并试图了解我的选择。具体来说,我对使用this L-BFGS library感兴趣。我对F#生态系统还很陌生,但对CUDA和函数式编程都有经验。

我一直在使用那个L-BFGS库作为实现逻辑回归的程序的一部分。如果我可以假设库正确并且在类型安全的F#中编写我的其余代码(包括在GPU上运行的代码),那将是很好的。

link C++ with F#似乎可能。假设我弄清楚如何将L-BFGS库集成到F#程序中,Alea GPU的引入会引起任何问题吗?

我想避免的是使用Alea在F#中重写L-BFGS。但是,这可能是使用F#的最简单方法。如果Alea有任何非线性优化设施,我可能会改用它们。

1 个答案:

答案 0 :(得分:1)

Alea GPU还没有非线性优化器。 CUDA版本的实现与标准CPU L-BFGS略有不同,有时会导致一些准确性问题。除此之外,我没有遇到任何代码问题,只是性能获胜也很大程度上取决于目标函数。逻辑回归的目标函数在数值上相对便宜。

我们有一个内部C#版本,用于移植到Alea GPU的代码,也可以在F#中使用,我们计划在将来的版本中发布它。