1
15
我还没有将STLPort的性能与MSCVC进行比较,但是如果有 重要的 差别(当然,在发布模式下,调试版本可能会有很大的不同。)不幸的是,您提供的链接——以及我所看到的任何其他比较——对细节太过轻描淡写,没有什么用处。
即使评测确实揭示了标准库容器或算法中的性能问题,我建议您首先进行分析 你是如何使用它们的 . 算法改进和适当的容器选择,特别是考虑到大O成本,是必要的 可能带来更高的绩效回报。 |
2
9
在进行切换之前,请确保使用 checked iterators 关掉。出于某种奇怪的原因,即使在发布版本中,它们也会默认打开,这在性能方面会有很大的不同。 |
3
6
我们最近做了相反的工作。我们的应用程序是一个跨平台的C++服务器程序,它是在VS 2008(x86)和HPX IA64和Linux上用GCC 4.3构建的。在每个平台上,我们都使用STLPort5.1.7作为STL库,并使用Boost1.38。 为了比较一段时间前的性能,我们还构建了没有STLport的应用程序,之后我们测量了性能。 在此之后,Windows上的性能略有提高。因此,我们选择停止在VS2008中使用STLport,而使用默认的VS2008STL库。 在HP-UX ia64上,性能下降了20%。卡钳(HP-UX分析器)显示字符串分配需要更多的时间。在默认gcc STL库中的字符串赋值内部,有对pthread_mutex_unock的调用。据我所知,由于默认gcc的STL库使用COW字符串,所以使用了pthread_mutex_lock/pthread_mutex_unlock。在我们的应用程序中,我们做了大量的字符串赋值,而由于COW字符串,我们的性能会变得更差。因此,我们仍然在HP-UX和gcc上使用STLPort。 |
4
5
我确实记得在进行此更改时收到一些警告,但没有什么不能快速解决的。作为一个缺点,我要补充的是,使用VisualStudio的调试器进行STLport调试比使用Microsoft的STL调试要难(更新:似乎有一种方法可以向调试器解释如何处理STLport容器,谢谢Jalf!)。 最新版本可以追溯到2008年10月,因此仍有人在研究它。看见 here 谢谢下载。 |
5
5
|
6
3
|
7
0
我还没有尝试过,但据我所知,微软的STL实现并没有重大改变。(VS2008编译器在2005年也没有重大的新优化)因此,如果STLPort当时更快,情况可能仍然如此。 但这只是猜测。:) 如果你尝试了,一定要报告结果。 |
8
-3
|
Community wiki · 需要改变的用户界面模式? 1 年前 |
LITzman · 使用状态处理颜色主题更改 1 年前 |
Community wiki · 进程。退出(0):输出消失? 1 年前 |
arsaces · 将文本添加到特定文件的末尾 2 年前 |
YGranja · 库<图形。h> MinGW-W64缺少 2 年前 |
Felipe Palermo · Ctrl键仍被按下,按键事件() 2 年前 |
HCJ · win cmd中的批处理脚本循环 2 年前 |