クロスプラットフォームライブラリとAPI
Qt Creator IDEと生産性向上ツール
UI compositionのためのUIデザインツール
Qtプロジェクト向け
モバイルアプリのデジタル広告
受託開発、トレーニング、サポート等
組み込み向けユーセージ分析
Qtは、UIデザインやソフトウェア開発から品質保証、展開に至るまで、製品開発ライフサイクル全体で生産性を向上させます。あなたのニーズに最も適したソリューションを見つけてください。
最新のリソースを入手し、今後のイベントを確認しましょう。
理想的な学習リソースを見つけたり、コミュニティと交流したりして、Qtのスキルを向上させましょう。
初心者であろうとベテランのQtプロであろうと、成功するために必要なサポートと助けがすべて揃っています。
3月 20, 2018 by 鈴木 佑 | Comments
この記事は The Qt Blog の Memory usage improvements in Qt3D を翻訳したものです。
執筆: Svenn-Arne Dragly, 2018年02月13日
KDAB と Qt コミュニティのエンジニアと共に、Qt3D のパフォーマンスと安定性の改善の取り組みを行っています。昨年の11月に Qt3D の CPU の使用量の改善 に関する記事を書きました。今回はメモリ使用量の改善について共有したいと思います。
Qt3D はとてもフレキシブルなアーキテクチャで、GUI スレッド上で動作するフロントエンドと、描画や入力処理、アニメーションを担当するアスペクトによって構成されるバックエンドが分離されています。アスペクトはそれぞれのスレッド上で動作し、スレッドプール上で動作する様々なジョブを実行します。これにより Qt3D は必要な CPU のリソースを並列化できますが、データの複製を最小限にするように気をつける必要があります。データの複製量を削減し、バックエンドのオブジェクトのメモリ使用の仕組みを改善することで、メモリ使用量を大幅に削減することができました。
Simple C++ example のようなテクスチャやその他のアセットを一切持たない簡単なプロジェクトでもこの改善を体感することが可能です。
私の Linux マシンでこのサンプルを動かしたところ、Qt 5.6.3 では 92MB だったメモリ使用量が、Qt 5.9.4 では 47MB までに改善しました。
車載のクラスタ向けで社内で利用している、より複雑なアプリケーションでも同様の効果を確認できました。これは Qt Quick と Qt 3D でダッシュボードの電気自動車を描画しています。このデモはナビ、メディア、電気使用量といったいくつかのビューで構成されています。複数のテクスチャからなる車の 3D モデルをライブ表示しています。
このサンプルでは Qt 5.6.3 では 220MB だったメモリ使用量が、Qt 5.9.4 では 135MB までに改善しました。
今後のリリースに向けても様々な改善に取り組んでいます。Qt 5.10.1 ではオンデマンドの描画のパフォーマンスを改善し、Qt 5.11では 描画のジョブの実行順序のスリム化を行いました。これにより安定性が向上し、今後のパフォーマンスの改善の余地も増えました。今後のリリースではフレーム間でのデータのキャッシュ量を増加することで処理量の削減をする予定です。
Download the latest release here: www.qt.io/download.
Qt 6.8 release focuses on technology trends like spatial computing & XR, complex data visualization in 2D & 3D, and ARM-based development for desktop.
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.
11 5, 2024
本稿は「Feedback Wanted: What does a unified Qt Hub look like to you?」の抄訳です。..
9 24, 2024
本稿は「Reducing Binary Size of Qt Applications with Qt 6.8 - Part 2: Coffee..
9 24, 2024
本稿は「Qt Gradle Plugin 1.0 Released」の抄訳です。 Qt Gradle Plugin 1.0 (QtGP) ビルド..
Qt Group includes The Qt Company Oy and its global subsidiaries and affiliates.