yug*_*ang 7 x11 idl xquartz macos-sierra
我不确定每个IDL用户是否都会遇到这种情况,但在升级到macOS Sierra和xQuartz 2.7.11之后,我的IDL小部件的响应速度变得非常慢.我在Red Hat Enterprise Linux Workstation 6.6上运行相同的程序.它运作顺利.我曾经在升级之前使用相同的程序SSH到OS X Mavericks.通过适当的互联网连接,它也运行良好.不幸的是,我不记得我使用的是哪个版本的xQuartz.
我不认为这个问题与SSH有关.我试图用SSH和本地运行程序,响应率似乎非常相似.
我试图将我的xQuartz降级到2.7.9,问题没有解决.
我试着自己调试,所以我发现以下链接与我有类似的问题. https://bugs.freedesktop.org/show_bug.cgi?id=93430
现在可以加速响应的唯一方法是强制将输出设置为256色.但它打破了我程序中的所有颜色设置.
所有建议和问题都表示赞赏!
小智 2
如果您的 IDL Widget 使用 Motif 和 XFT(抗锯齿字体),那么我有一个解决方案,可以帮助加快速度。
根本问题在于 XQuartz 以及它如何与 Mac 图形子系统交互。El Capitan 之后,所有需要往返的 Xlib 调用都变得非常慢。如果您使用 SSH 网络访问,这些通常也会减慢 X 客户端的响应速度,但在这种情况下,本地运行的程序也会发生这种情况。
由于我们无法修复 MacOS,因此我们需要“修复”我们的软件并避免缓慢的功能,而这些功能在其他系统上运行得很好。在旧版本的 MacOS 上运行良好。
首先,在您自己的软件中,尽量减少使用会导致往返的 Xlib 调用:XSync、XInternAtom、XGetWindowAttributes、XQuery* (XQueryColor、XQueryBestCursor、XQueryBestSize、...)、XGetAtom...
这将有助于提高任何基于 Xt 的工具包的性能。在普通的 X Server 上,如果在本地运行,不会有巨大的收益,但在 XQuartz 上,则会产生很大的差异。
最后,如果您将 Motif 与 XFT 结合使用,您可以从 Sourceforge https://sourceforge.net/projects/motif/ 下载最新的 Motif 版本 ,并应用此错误报告中描述的修复: http://bugs.motifzone.com/ show_bug.cgi?id=1715 解决了查询使用 XFT 字体绘制的每个标签的背景颜色的问题。
您可以在本视频(Motif XFT 文本标签修复) https://www.youtube.com/watch?v=Tg8KQrU0XkU 和本视频(通过使用平铺重用共享来减少 XSnyc 调用) 中观察我的软件获得的加速 内存缓冲区) https://www.youtube.com/watch?v=MNxnOeqiOCw
| 归档时间: |
|
| 查看次数: |
2724 次 |
| 最近记录: |