Changes between Version 1 and Version 2 of Reading/XenG/vmgl


Ignore:
Timestamp:
Apr 17, 2009, 3:22:01 PM (15 years ago)
Author:
rider
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Reading/XenG/vmgl

    v1 v2  
    44== 步驟一: 在 Dom0 上安裝 VMGL ==
    55'''# 安裝環境所需套件.''' [[BR]]
    6 rider@cloud:~/vmgl$ sudo apt-get install build-essential mesa-common-dev libglu1-mesa-dev mesa-utils libxmu-headers libxmu6 libxmu-dev zlib1g-dev libjpeg62 libjpeg62-dev xutils-dev libxaw-headers libxaw7 libxaw7-dev libxext6 libxext-dev rxvt lwm xauth xvfb xfonts-100dpi xfonts-75dpi culmus xfonts-scalable xfonts-base [[BR]]
     6rider@cloud:~/vmgl$ sudo apt-get install build-essential firefox flashplugin-nonfree mesa-common-dev libglu1-mesa-dev mesa-utils libxmu-headers libxmu6 libxmu-dev zlib1g-dev libjpeg62 libjpeg62-dev xutils-dev libxaw-headers libxaw7 libxaw7-dev libxext6 libxext-dev rxvt lwm xauth xvfb xfonts-100dpi xfonts-75dpi culmus xfonts-scalable xfonts-base [[BR]]
    77'''# 下載VMGL.''' [[BR]]
    88rider@cloud:~/vmgl$ wget http://www.cs.toronto.edu/~andreslc/software/vmgl-0.1.tar.bz2 [[BR]]
     
    9898rider@guest:~$ mkdir -p vmgl [[BR]]
    9999rider@guest:~$ cd ./vmgl [[BR]]
    100 rider@guest:~/vmgl$ sudo apt-get install build-essential mesa-common-dev libglu1-mesa-dev mesa-utils libxmu-headers libxmu6 libxmu-dev zlib1g-dev libjpeg62 libjpeg62-dev xutils-dev libxaw-headers libxaw7 libxaw7-dev libxext6 libxext-dev rxvt lwm xauth xvfb xfonts-100dpi xfonts-75dpi culmus xfonts-scalable xfonts-base [[BR]]
     100rider@guest:~/vmgl$ sudo apt-get install build-essential firefox flashplugin-nonfree mesa-common-dev libglu1-mesa-dev mesa-utils libxmu-headers libxmu6 libxmu-dev zlib1g-dev libjpeg62 libjpeg62-dev xutils-dev libxaw-headers libxaw7 libxaw7-dev libxext6 libxext-dev rxvt lwm tightvncserver xauth xvfb xfonts-100dpi xfonts-75dpi culmus xfonts-scalable xfonts-base [[BR]]
    101101'''# 基本桌面環境.''' [[BR]]
    102102{{{
     
    131131rider@guest:~/vmgl/vmgl.hg$ sudo ln -sf /etc/X11/rgb.txt /usr/X11R6/lib/X11/rgb
    132132}}}
     133
     134== 步驟五: VMGL 使用說明: 在Dom0 上的設定 ==
     135'''# 將 X-Windows 桌面 export 出來.''' [[BR]]
     136rider@cloud:~$ export DISPLAY=:0 [[BR]]
     137'''# 啟動 VLGL stub-daemon.''' [[BR]]
     138rider@cloud:~$ stub-daemon [[BR]]
     139'''# 檢查 stub-daemon 所對應的 port(7000) 有無開啟.''' [[BR]]
     140rider@cloud:~$ netstat -tunlp [[BR]]
     141
     142{{{
     143Active Internet connections (only servers)
     144Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
     145tcp        0      0 0.0.0.0:8002            0.0.0.0:*               LISTEN      -               
     146tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -               
     147tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      -               
     148tcp        0      0 0.0.0.0:7000            0.0.0.0:*               LISTEN      29082/stub-daemon ---> VMGL stub-daemon
     149udp        0      0 0.0.0.0:32769           0.0.0.0:*                           -               
     150udp        0      0 0.0.0.0:5353            0.0.0.0:*                           -               
     151}}}
     152
     153== 步驟六: VMGL 使用說明: 在DomU 上的設定 ==
     154# 設定 DomU 上的字型路徑對應. [[BR]]
     155rider@guest:~$ sudo ln -sf /usr/share/fonts/X11/ /usr/X11R6/lib/X11/fonts (if necessary - fix font path) [[BR]]
     156{{{
     157# FontPath:
     158
     159/usr/X11R6/lib/X11/fonts
     160or
     161/usr/share/fonts/X11
     162}}}
     163# 確認 rgb 存在於對應路徑. [[BR]]
     164rider@guest:~$ less /usr/X11R6/lib/X11/rgb.txt (if necessary - rgb path confirmation) [[BR]]
     165# 設定 DomU 上的 VMGL 環境變數. [[BR]]
     166rider@guest:~$ sudo vim /etc/profile [[BR]]
     167{{{
     168GLSTUB=Cloud_IP(host_IP):7000
     169LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/vmgl
     170LD_PRELOAD=/usr/local/lib/vmgl/libGL.so
     171export GLSTUB LD_LIBRARY_PATH LD_PRELOAD
     172}}}
     173rider@guest:~$ source /etc/profile [[BR]]
     174# 設定 DomU 上的 X forwarding. [[BR]]
     175'''Using X forwarding''' [[BR]]
     176rider@guest:~$ sudo vim /etc/ssh/sshd_config [[BR]]
     177{{{
     178X11Forwarding yes
     179}}}
     180rider@guest:~$ sudo vim /etc/ssh/ssh_config [[BR]]
     181{{{
     182    ForwardX11 yes
     183    ForwardX11Trusted yes
     184}}}
     185# 重新啟動 DomU 上的 SSH Service. [[BR]]
     186rider@guest:~$ sudo /etc/init.d/ssh restart [[BR]]
     187# 設定 VNC server 使用者密碼. [[BR]]. [[BR]]
     188rider@guest:~$ /usr/bin/vncpasswd [[BR]]
     189# 開啟 DomU 上的第一台VNC Server. [[BR]]
     190rider@guest:~$ /usr/bin/vncserver -geometry 1024x768 -depth 24 :1 [[BR]]
     191# 開啟 DomU 上的第二台VNC Server.(可跳過此步驟) [[BR]]
     192rider@guest:~$ /usr/bin/vncserver -geometry 1024x768 -depth 24 :2 [[BR]]
     193# 檢查 VNCserver 有無開啟對應之 port(5901開始). [[BR]]
     194rider@guest:~$ netstat -tunlp [[BR]]
     195{{{
     196(Not all processes could be identified, non-owned process info
     197 will not be shown, you would have to be root to see it all.)
     198Active Internet connections (only servers)
     199Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
     200tcp        0      0 0.0.0.0:5901            0.0.0.0:*               LISTEN      10652/Xtightvnc ---> guest:1
     201tcp        0      0 0.0.0.0:5902            0.0.0.0:*               LISTEN      10630/Xtightvnc
     202tcp        0      0 0.0.0.0:6001            0.0.0.0:*               LISTEN      10652/Xtightvnc ---> guest:2
     203tcp        0      0 0.0.0.0:6002            0.0.0.0:*               LISTEN      10630/Xtightvnc
     204tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      -
     205tcp6       0      0 :::22                   :::*                    LISTEN      -
     206tcp6       0      0 ::1:6010                :::*                    LISTEN      -
     207}}}
     208
     209'''# 將 VNC Server:1 export 出來.''' [[BR]]
     210rider@guest:~$ export DISPLAY=:1 [[BR]]
     211
     212== 步驟七: 在 Dom0 上 透過 X forwarding 登入 DomU ==
     213'''# 使用 X forwarding 的方式登入 DomU.''' [[BR]]
     214'''Using X forwarding''' [[BR]]
     215rider@cloud:~$ ssh -X guest [[BR]]
     216'''# 檢查 direct rendering 有無起來.''' [[BR]]
     217rider@guest:~$ glxinfo [[BR]]
     218{{{
     219name of display: localhost:10.0
     220display: localhost:10  screen: 0
     221direct rendering: Yes
     222server glx vendor string: VMGL
     223server glx version string: 1.2 VMGL
     224server glx extensions:
     225client glx vendor string: VMGL
     226client glx version string: 1.2 VMGL
     227client glx extensions:
     228GLX version: 1.3
     229GLX extensions:
     230OpenGL extensions:
     231    GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_multisample,
     232    GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_point_parameters,
     233    GL_ARB_point_sprite, GL_ARB_shadow, GL_ARB_texture_border_clamp,
     234    GL_ARB_texture_compression, GL_ARB_texture_cube_map,
     235    GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
     236    GL_EXT_texture_env_combine, GL_ARB_texture_env_dot3,
     237    GL_EXT_texture_env_dot3, GL_ARB_texture_mirrored_repeat,
     238    GL_ARB_texture_non_power_of_two, GL_ARB_transpose_matrix,
     239    GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_window_pos,
     240    GL_EXT_blend_color, GL_EXT_blend_minmax, GL_EXT_blend_func_separate,
     241    GL_EXT_blend_subtract, GL_EXT_texture_env_add, GL_EXT_fog_coord,
     242    GL_EXT_multi_draw_arrays, GL_EXT_secondary_color, GL_EXT_shadow_funcs,
     243    GL_EXT_stencil_wrap, GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
     244    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias,
     245    GL_EXT_texture_object, GL_EXT_texture3D, GL_EXT_bgra,
     246    GL_IBM_rasterpos_clip, GL_NV_fog_distance, GL_NV_fragment_program,
     247    GL_NV_register_combiners, GL_NV_register_combiners2,
     248    GL_NV_texgen_reflection, GL_NV_texture_rectangle, GL_NV_vertex_program,
     249    GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_SGIS_generate_mipmap,
     250    GL_CR_state_parameter, GL_CR_cursor_position, GL_CR_bounding_box,
     251    GL_CR_print_string, GL_CR_tilesort_info, GL_CR_synchronization,
     252    GL_CR_head_spu_name, GL_CR_performance_info, GL_CR_window_size,
     253    GL_CR_tile_info, GL_CR_saveframe, GL_CR_readback_barrier_size,
     254    GL_CR_server_id_sharing, GL_CR_server_matrix
     255    GLX_ARB_multisample
     256OpenGL vendor string: H. Andres Lagar-Cavilla
     257OpenGL renderer string: VMGL
     258OpenGL version string: 1.5 VMGL 1.9
     2590x52 24 dc  0 32  0 r  y  .  8  8  8  0  4 24  8 16 16 16 16  2 1 None
     2600x53 24 dc  0 32  0 r  y  .  8  8  8  8  4 24  8 16 16 16 16  2 1 None
     2610x54 24 dc  0 32  0 r  y  .  8  8  8  0  4 24  8 16 16 16 16  4 1 None
     2620x55 24 dc  0 32  0 r  y  .  8  8  8  8  4 24  8 16 16 16 16  4 1 None
     2630x56 24 dc  0 32  0 r  .  .  8  8  8  0  4 24  8 16 16 16 16  2 1 None
     2640x57 24 dc  0 32  0 r  .  .  8  8  8  8  4 24  8 16 16 16 16  2 1 None
     2650x58 24 dc  0 32  0 r  .  .  8  8  8  0  4 24  8 16 16 16 16  4 1 None
     2660x59 24 dc  0 32  0 r  .  .  8  8  8  8  4 24  8 16 16 16 16  4 1 None
     2670x23 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  8 16 16 16 16  0 0 None
     2680x5a 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  8 16 16 16 16  0 0 None
     2690x5b 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  8 16 16 16 16  0 0 None
     2700x5c 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  8 16 16 16 16  0 0 None
     2710x5d 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  0 16 16 16 16  0 0 None
     2720x5e 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  0 16 16 16 16  0 0 None
     2730x5f 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  0 16 16 16 16  0 0 None
     2740x60 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  0 16 16 16 16  0 0 None
     2750x61 32 tc  0 32  0 r  y  .  8  8  8  0  4  0  0 16 16 16 16  0 0 None
     2760x62 32 tc  0 32  0 r  y  .  8  8  8  8  4  0  0 16 16 16 16  0 0 None
     2770x63 32 tc  0 32  0 r  .  .  8  8  8  0  4  0  0 16 16 16 16  0 0 None
     2780x64 32 tc  0 32  0 r  .  .  8  8  8  8  4  0  0 16 16 16 16  0 0 None
     2790x65 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  0 16 16 16 16  2 1 None
     2800x66 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  0 16 16 16 16  2 1 None
     2810x67 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  0 16 16 16 16  4 1 None
     2820x68 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  0 16 16 16 16  4 1 None
     2830x69 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  0 16 16 16 16  2 1 None
     2840x6a 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  0 16 16 16 16  2 1 None
     2850x6b 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  0 16 16 16 16  4 1 None
     2860x6c 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  0 16 16 16 16  4 1 None
     2870x6d 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  8 16 16 16 16  2 1 None
     2880x6e 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  8 16 16 16 16  2 1 None
     2890x6f 32 tc  0 32  0 r  y  .  8  8  8  0  4 24  8 16 16 16 16  4 1 None
     2900x70 32 tc  0 32  0 r  y  .  8  8  8  8  4 24  8 16 16 16 16  4 1 None
     2910x71 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  8 16 16 16 16  2 1 None
     2920x72 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  8 16 16 16 16  2 1 None
     2930x73 32 tc  0 32  0 r  .  .  8  8  8  0  4 24  8 16 16 16 16  4 1 None
     2940x74 32 tc  0 32  0 r  .  .  8  8  8  8  4 24  8 16 16 16 16  4 1 None
     295}}}
     296'''# DomU 上的 glxgears 效能測試.''' [[BR]]
     297rider@guest:~$ glxgears [[BR]]
     298{{{
     29947819 frames in 5.0 seconds = 9563.678 FPS
     30046064 frames in 5.0 seconds = 9212.566 FPS
     30144584 frames in 5.0 seconds = 8916.581 FPS
     30244256 frames in 5.0 seconds = 8850.974 FPS
     30344688 frames in 5.0 seconds = 8937.528 FPS
     304}}}
     305
     306== 步驟八: 使用 VNC Viewer 登入 DomU ==
     307'''# 使用者可以用自己的 VNC Viewer(TurboVNC Viewer or Tightvnc viewer)登入 DomU 的 VNC Server,登入後就可以透過 rxvt 來下指令跑相關 3D 應用了.''' [[BR]]
     308@ 使用端電腦
     309rider@PC:~$ vncviewer guest:1 [[BR]]
     310'''# 檢查 direct rendering=yes?.''' [[BR]]
     311@ VNC viewer 登入 :1 後
     312rider@guest:~$ glxinfo [[BR]]
     313
     314== 實作四: 透過VMGL在虛擬機器上喀Game - 體驗 3D 效能 ==
     315
     316== 步驟九: 喀 Game 時間 ==
     317'''# 開啟 Firefox 來玩 Doom Online.''' [[BR]]
     318rider@guest:~$ firefox !http://necromanthus.com/Games/Flash/doom.html [[BR]]