【发布时间】:2016-02-15 05:34:37
【问题描述】:
我目前正在尝试在 Windows 中构建 word2vec。但是posix_memalign() 函数存在问题。大家都建议用_aligned_malloc(),但是参数个数不一样。那么 Windows 中 posix_memalign() 的最佳等效项是什么?
【问题讨论】:
-
a = posix_memalign((void **)&syn1neg, 128, (long long)vocab_size * layer1_size * sizeof(real));例如如何更改为使用malloc? -
有一个whole section in MSDN 专门用于 Windows 上的数据对齐。您如何阅读 Windows 函数的文档,然后阅读 POSIX 函数的文档,然后尝试了解什么参数代表什么?
-
@HristoIliev 如果我编写自己的代码,我会这样做。我只需要建立别人的图书馆。如果我害怕构建它不正确(意外的粉碎或其他东西)。刚刚向已经面临同样问题的程序员提出了快速问题。
-
只需将
#define posix_memalign(p, a, s) (((*(p)) = _aligned_malloc((s), (a))), *(p) ?0 :errno)添加到您的Windows 版本。 :-)
标签: c++ c windows memory posix