x11vnc yavaş, ancak kullanılabilir bant genişliğinin yalnızca% 10'unu kullanıyor


11

20 ms gecikme ile 15Mbit / s ağ üzerinde x11vnc kullanıyorum. Ekran çok değiştiğinde x11vnc yavaştır - örneğin bir tarayıcıda bir sekmeyi değiştirdiğimde, görünüm tamamen yeniden çizilene kadar yaklaşık iki saniye sürer.

Tuhaf olan, x11vnc'nin maksimum bağlantı hızının, mevcut bant genişliğinin sadece% 10'unun yavaş yeniden çizilmesi sırasında bile olmasıdır. X11vnc neden yeniden çizmeyi hızlandırmak için kullanılabilir bant genişliğini kullanmıyor? Örneğin scp, mevcut bant genişliğinin% 100'ünü sorunsuz kullanıyor.

Sistemimdeki x11vnc'nin darboğazının ne olduğunu nasıl belirleyebilirim? Şimdiye kadar düşünüyorum:

  1. % 10 ağ kullanımı => ağ bir darboğaz değil
  2. fb okuma hızı: 601 MB / sn => okuma fb bir darboğaz değil

Herhangi bir fikir nasıl x11vnc daha profil ve yavaşlama neyin neden olduğunu bulmak nasıl?

Örneğin, x11vnc için ne kadar veri işlediğini ve bir ekranın tutulması, işlenmesi ve sıkıştırılması ve ağ üzerinden gönderilmesi ne kadar zaman aldığını göstermek için herhangi bir anahtar var mı?

Yanıtlar:


11

Kendi sorumu cevaplamak için:

Sıkı kodlamadan onaltılık kodlamaya geçiş, yavaş yeniden çizme sorununu tamamen çözdü.

Bazı ayrıntılar eklemek için: Ekranın yavaş yeniden çizilmesi sırasında istemcideki CPU'nun% 100 kullanıma yükseldiğini fark ettim. Sıkı kodlama kullanıyordum ve VNC Tight Encoder - Karşılaştırma Sonuçları sayfasından , hextile kodlamaya kıyasla sıkı kodlamanın oldukça cpu yoğun olduğu görülebilir. Onaltılık maksimum işlemci kullanımına geçildikten sonra hiçbir zaman% 100 olmaz, neredeyse tüm bant genişliği kullanılır ve yeniden çizim her zaman bir saniyeden az sürer. Yani müşterinin CPU'su darboğazdı.


Ya da daha iyi bir alternatif (daha az bant genişliği, düşük işlemci kullanımı ve onaltılıktan bile daha hızlı görünüyor) x11vnc'yi TurboVNC desteği ile derlemek ve ardından TurboVNC istemcisini kullanmaktır .


İşte bazı bant genişliği ve sıkıştırma süresi karşılaştırmaları tightvnc.com/archive/compare.html
huyz

1
Kodlamayı tam olarak nasıl değiştirdiniz?
ScottF

1

Bunun nedeni, ekran yakalamanın / oluşturucunun verimsiz olmasıdır. Daha iyi performans elde etmek için birçok farklı VNC uygulaması bununla oynar.

Yerel konsolda tam olarak ne yansıtacak şekilde gerekmiyorsa, daha iyi bir çözümdür NoMachine NX veya FreeNX bir uzak masaüstü ortamı olarak. Performans, WAN bağlantıları üzerinden bile VNC ile karşılaştırıldığında gece gündüz.


1

Umarım bu işe yarar. http://www.karlrunge.com/x11vnc/faq.html#faq ... VNC görüntüleyici parametrelerini ve x11vnc parametrelerini arayın:

Benim için çalıştı.


1
Sunucu Arızasına Hoşgeldiniz! Yanıtların içeriğe işaret eden değil, içeriğe sahip olmasını gerçekten tercih ediyoruz. Bu teorik olarak soruyu cevaplayabilir, ancak cevabın temel kısımlarını buraya dahil etmek ve referans için bağlantı sağlamak tercih edilir.
Chris S
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.