X



トップページLinux
109コメント33KB

これはすごい!Windowsじゃ無理って思えるGUIアプリ

0072login:Penguin
垢版 |
2019/12/23(月) 11:47:13.28ID:l8JnRNko
>>66
LinuxのXアプリが使うXlib(GDIに相当)もXRender(GDI+やDirect2Dに相当)もちゃんと
ハードウェアアクセラレーションが掛かるよ

Nvidiaは知らないが、IntelとAMDのグラフィックボードの場合、X Serverは以前は
XAAというグラフィックボードの2Dアクセラレーションを活用する形で、現在は
GlamorというOpenGLを使ってグラフィックボードの3Dのアクセラレーションを
活用してXlibやXRenderをハードウェアアクセラレーションしている

ちなみにFirefoxはLinuxでもWindowsでもgtk+が使うCairoというレンダリング
ライブラリを使っていて、LinuxではXRender、WindowsではDirect2Dを使うので
ちゃんとハードウェアアクセラレーションされているし、ChromeもSkia経由で
同様にアクセラレーションされる

Vista以降のWindowsでは残念ながら今も多くのアプリが使うGDIのアクセラ
レーションが不十分なのでLinuxよりWindowsのDWMの方が劣っている
0073login:Penguin
垢版 |
2019/12/23(月) 12:05:50.02ID:l8JnRNko
>>69
> 画面に表示されてない部分は描画を省くという
これは今でも一緒だよ

WindowsでもXでも再描画が必要な部分がどこかWM_PAINTメッセージやExposeイベントで
送られてくるので、必要な範囲だけ再描画する

実際はコントロールやウィジット単位で再描画する実装になっているけどね

> 今は表示されてない部分を含めてすべて描画してるので遅くなってる。

いいえ

DWMやcompizのようなWindowの内容を保存するbacking storeを利用するシステムでは
ウィンドウの移動やウィンドウの順番変更のときはWM_PAINTやExposeが飛ばない

ちゃんと最適化されている

ちなみにDWMでGDIに問題が生じたのと違ってcompizでXlibの描画に問題が生じないのは
X Window Systemは20年以上前からbacking storeを利用したウィンドウ管理ができるように
なっていたから

ttp://xjman.dsl.gr.jp/X11R6/X11/CH03.html
0074login:Penguin
垢版 |
2019/12/23(月) 12:41:33.06ID:ySsXS/YG
>>72
やり直し
ドキュメントを見る限り、cairoのxlibによるハードウェアアクセラレーションはビットマップのコンポジションが中心であり、
CPUレンダリングを完全に排除できるものではないように見える。実際のソースコードを参照し、主要なAPIがラスタリングにCPUを用いていないことを確認せよ。
また、Linuxのcairoを利用しているアプリの多くがxlibバックエンドを使っているかどうかは自明ではない。調査せよ。
0075login:Penguin
垢版 |
2019/12/23(月) 14:46:34.02ID:l8JnRNko
>>74
ちゃんとソースコードみてね

現在はXlibではなくXRenderでの描画なので見るコードはcairo-xlib-render-compositor.c
0076login:Penguin
垢版 |
2019/12/23(月) 15:01:01.25ID:l8JnRNko
ちなみにXRender,fontconfig, Xft, carioこれらはすべてKeith Packardが作ったもの
同じ人物が作ったので効率的に動くように作られている

Keith PackardはXorgのX Serverの主要な開発者でもある

それとVistaが変なのはWin32APIを捨てて.netメインにする設計思想だったLonghornの
開発に失敗して成果の一部だけ取り込んだためだからこの辺の事情は考慮すべき
0077login:Penguin
垢版 |
2019/12/23(月) 15:25:53.87ID:HVMvZb4c
https://nyaruru.はてなブログ.com/entry/20090208/p1

矩形描画系はWDDM1.1でハードウェアアクセラレーションが効く

線分や円については現在のGPUの描画の仕組みではCPUで描画した物と
寸分違わず全く同じ見た目にするのは無理だろう
0078login:Penguin
垢版 |
2019/12/23(月) 16:33:56.45ID:7uXoPuqJ
>>73
Vista以降はウインドウが最小化されていても
他のウインドウに隠れいても
WM_PAINTが飛んでくるんだよ

ウィンドウの移動やウィンドウの順番変更のときって
表示されてるかどうかと何の関係もないだろ
0079login:Penguin
垢版 |
2019/12/23(月) 16:40:20.08ID:OVfiG/dD
バッキングストアは卓上の端末と電算室のコンピュータが遅い回線でつながれていた時代の名残ですよ。
とても素晴らしいものってわけではないです。
0080login:Penguin
垢版 |
2019/12/23(月) 16:44:19.85ID:KEa7nQLo
同じハードウェア上で同じ仕組みを使って動いているのに、
compiz(Linux)だけ旧来のGDIアクセラレータが動いていると思っている事が間違いじゃね。

そもそもの話、今時のGPUにGDIのアクセラレータなんぞが乗っているのだろうか?
0081login:Penguin
垢版 |
2019/12/23(月) 16:58:41.22ID:OVfiG/dD
そもそもパソコンのハードウェアはWindows用に設計されてるので、Windowsで効率が良いのは当然なんですよ。
0082login:Penguin
垢版 |
2019/12/23(月) 17:50:29.36ID:OVfiG/dD
動画は超解像度がよく効くよね。
0083login:Penguin
垢版 |
2019/12/23(月) 19:32:26.64ID:l8JnRNko
>>78
何を言いたいのかわからないのでVistaの描画システムの解説ページを貼るね

ttps://www.atmarkit.co.jp/fwin2k/vista_feature/05hardware/05hardware_03.html

従来のウィンドウ・システム
ウィンドウが動いたり、上下関係が変わるたびにリペイント・イベントが発生することになる。だが、たくさんの
アプリケーションで少ないメモリ(画面1枚分のメモリ)を共有するためにはしょうがないだろう。

Vistaのウィンドウ・システム
先ほど述べたように、ウィンドウの移動などに伴うリペイントが発生しないので、無駄なCPU時間の消費が抑えられる。
アプリケーションは自分自身のバッファ内にさえ描画しておけば、あとはすべてDWMが処理してくれる。

リペイント・イベント=WM_PAINTが飛ぶ

>>80
ちゃんと>>72で書いたつもりなんだけど、現行のシステムの場合compizもその上で動くアプリも
最終的にOpenGLの3Dアクセラレーションを利用する

忘れていたけどcairoは直接OpenGLをバックエンドに描画することもできます
0084login:Penguin
垢版 |
2019/12/24(火) 19:02:23.47ID:L5i1QPrG
さすがにGUIで窓や林檎に勝ってると思う奴は気がふれてる
0087login:Penguin
垢版 |
2020/01/05(日) 19:21:59.42ID:Hm5C/G5u
Downloadのページ開いたらてっぺんにsetup64.exeがあってワロタ
0088login:Penguin
垢版 |
2020/02/04(火) 19:10:50.44ID:DIcuvBCC
Wayland対応がまともなのはGNOMEしかないな
設計はXよりきれいになったけど
0089login:Penguin
垢版 |
2020/02/06(木) 22:07:59.32ID:la4W9VTn
xface
unix でも最近あまり見ないが、あの味はwindows では難しかろう
0090login:Penguin
垢版 |
2020/02/06(木) 22:31:49.19ID:ESBQyLO3
Xfceはエックスフェイスではなくエックスエフシーイーである
0091login:Penguin
垢版 |
2020/02/07(金) 13:59:05.91ID:Fv5LsiQE
>>90
ネットワーク上のマシンのload average をrwhoで取得して顔で表示するアプリの事だぞ? 88で書いたのは。
念のため
0093login:Penguin
垢版 |
2020/02/07(金) 16:29:29.93ID:Fv5LsiQE
>>91
>>90
すまん、xface じゃなくて xloadface だったわ。
0095login:Penguin
垢版 |
2020/02/07(金) 21:12:28.36ID:wKJgarMF
>>94
数値じゃないよ、あの(無駄な?)味わいの話だよ。

windows でも作れなくはないだろうけど、作らんでしょ?
0096login:Penguin
垢版 |
2020/02/08(土) 15:25:58.39ID:d8QTAMZT
そーいう趣旨のスレじゃないと思うけどなぁ。
0098login:Penguin
垢版 |
2020/02/21(金) 11:30:29.43ID:KJuUnQne
どうだろう。犬厨が考えるコスパ(笑)ってのは、機材が無料で手に入って人材も無償で使い放題な状況だから、
コンプライアンス的には真っ黒だろう。
0099login:Penguin
垢版 |
2020/02/22(土) 07:42:52.07ID:XMxRSfLo
>>98
犬厨って 林 檎 と 白 い お 父 さ ん 犬 が大好きなア フォ ン厨の事ですよ。
でもアッポレOSはWindowsと違って恐怖のiesysとA gentBaseに感染しないから、
身に覚えのない誤 認 逮 捕をされないんだお(笑)
0101login:Penguin
垢版 |
2020/04/08(水) 20:34:10.14ID:1oYnc0H2
文句を言うなクソドザ!
0103login:Penguin
垢版 |
2020/04/09(木) 12:32:32.81ID:OaDOmDMa
文句を言うなクソドザ!
0104login:Penguin
垢版 |
2021/04/26(月) 23:38:30.47ID:yW5GJ2iT
MacOS
今のMacOSって単なるDEなんだけど、OSと勘違いしている人がやたらと多い。
0105login:Penguin
垢版 |
2021/04/27(火) 00:54:24.97ID:T3TtOINR
Linux
昔からLinuxはカーネルであってOSじゃないんだけど
OSと勘違いしてる人がやたら多い
OSとはAndroidやUbuntuのこと
0106login:Penguin
垢版 |
2022/03/16(水) 04:45:01.21ID:dT58ZzQR
どうでもいい知識をドヤ顔で書くのもちょっと恥ずかしいね
0107login:Penguin
垢版 |
2022/05/19(木) 16:40:52.24ID:FKKzsVjl
ターミナル(エミュレータ)
ターミナルだけはWindowsでは絶対むーりー コマンドプロンプトとかアレルギー発作起きるで
0108login:Penguin
垢版 |
2022/05/19(木) 17:25:03.57ID:MigUC3rG
無理ではないが使い道が無いからなぁw
0109login:Penguin
垢版 |
2022/05/19(木) 23:39:11.91ID:EWDWVzAq
コマンドプロンプトは
dockerとか、mklinkとかたまに使うけど
使いにくいね、
レスを投稿する


ニューススポーツなんでも実況