* Ilija Hadzic's Virtual CRTCs feature discuss @ 2014-08-18 22:35 Derek 2014-08-25 13:12 ` Daniel Vetter 0 siblings, 1 reply; 6+ messages in thread From: Derek @ 2014-08-18 22:35 UTC (permalink / raw) To: dri-devel [-- Attachment #1.1: Type: text/plain, Size: 1802 bytes --] Hi every one I'm currently working on VirtualMonitor in my leisure time. It allows you to use compute/tablet/smartphone as a second monitor for your primary computer. please refer to http://virtualmonitor.github.io for more information. Currently I have released very basic version for windows2000-windows7 to demonstrate the project is feasible. When I was trying to make a further step on windows, I realized it is difficult for an individual, as it is not open source and also without technical support from Microsoft. Then I want to move to linux, and I found Ilija Hadzic's post about Virtual CRTCs. his post is here: http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html In his implementation, GPU driver can create arbitrary number of CRTCs (configurable by user) instead of only those CRTCs that represent real hardware. It is very useful not only for VirtualMonitor, but also VNC/Virtualization/USB display etc. based on this implementation those application will be able to take full advantage of the physical graphic card(3D acceleration). I want raise Ilijia's original question agian, if anybody in this community think Virtual CRTCs is useful, and willing to work together to make a further progress. My thought is if can implement a driver independent layer between dri and vendor specific GPU driver, with some general API. maybe implement this based one vendor related GPU first? e.g. based on Ilijia's implementation for Radeon as a daemon? GPU driver is not my expertise, If some expert from this community think this feature is interesting, and willing to initiate a project for this feature, that will be great. Then people can work and discuss together. Any comments regarding to Virtual CRTC or VirtualMonitor are very welcome. Thanks. Best wishes Derek [-- Attachment #1.2: Type: text/html, Size: 2165 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Ilija Hadzic's Virtual CRTCs feature discuss 2014-08-18 22:35 Ilija Hadzic's Virtual CRTCs feature discuss Derek @ 2014-08-25 13:12 ` Daniel Vetter 2014-08-25 19:02 ` Derek 0 siblings, 1 reply; 6+ messages in thread From: Daniel Vetter @ 2014-08-25 13:12 UTC (permalink / raw) To: Derek; +Cc: dri-devel On Mon, Aug 18, 2014 at 03:35:16PM -0700, Derek wrote: > Hi every one > I'm currently working on VirtualMonitor in my leisure time. It allows you > to use compute/tablet/smartphone as a second monitor for your primary > computer. please refer to http://virtualmonitor.github.io for more > information. Currently I have released very basic version for > windows2000-windows7 to demonstrate the project is feasible. When I was > trying to make a further step on windows, I realized it is difficult for an > individual, as it is not open source and also without technical support > from Microsoft. > > Then I want to move to linux, and I found Ilija Hadzic's post about Virtual > CRTCs. his post is here: > http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html > In his implementation, GPU driver can create arbitrary number of CRTCs > (configurable by user) instead of only those CRTCs that represent real > hardware. > It is very useful not only for VirtualMonitor, but also > VNC/Virtualization/USB display etc. based on this implementation those > application will be able to take full advantage of the physical graphic > card(3D acceleration). > > I want raise Ilijia's original question agian, if anybody in this community > think Virtual CRTCs is useful, and willing to work together to make a > further progress. > My thought is if can implement a driver independent layer between dri and > vendor specific GPU driver, with some general API. maybe implement this > based one vendor related GPU first? e.g. based on Ilijia's implementation > for Radeon as a daemon? > > GPU driver is not my expertise, If some expert from this community think > this feature is interesting, and willing to initiate a project for this > feature, that will be great. Then people can work and discuss together. > > Any comments regarding to Virtual CRTC or VirtualMonitor are very welcome. > Thanks. I think the concept is overall sound (haven't looked at the old patches in detail).For the actual implementation I think a separate virtual drm driver is now the better approach, since with dma-buf and soon native fence support we can do this now properly. And especially now that we have multi-gpu support in X it should integrate almost seamlessly into X (and other display managers with multi-gpu support). Instead of requering special support in all drivers. Another thing for which iirc no one ever proposed a decent solution is synchronization to consumers of the frontbuffers for virtual gpus. So I guess the driver-private ioctl interface to make that magic work will be key. A (configurable) virtual gpu should also be really useful for automated testing, e.g. of hot-plug and unplug (both drm core and userspace). The v4l folks have such a driver (recently massively revamped for 3.18) and it looks extremely useful. For the configuration interface I guess a few simple module options to get started should be enough, eventually we can switch to configfs (or similar) to be able to configure and create/destroy virtual gpus at runtime. Just my random thoughts, probably good to kickstart the discussion with some quick patches and chat with people on #dri-devel on freenode irc. Cheers, Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Ilija Hadzic's Virtual CRTCs feature discuss 2014-08-25 13:12 ` Daniel Vetter @ 2014-08-25 19:02 ` Derek 2014-08-26 8:18 ` Daniel Vetter 0 siblings, 1 reply; 6+ messages in thread From: Derek @ 2014-08-25 19:02 UTC (permalink / raw) To: Daniel Vetter; +Cc: dri-devel [-- Attachment #1.1: Type: text/plain, Size: 3877 bytes --] Hi, Daniel Thanks for your response! Talking about v4l's virtual gpu driver? Could you please tell some more informations. is this driver in git.linuxtv.org/cgit.cgi/media_tree.git I want to take a look this driver. but I can't find it in their git repository. Or is there any introduction post related this driver? Thanks. Best wishes Derek On Mon, Aug 25, 2014 at 6:12 AM, Daniel Vetter <daniel@ffwll.ch> wrote: > On Mon, Aug 18, 2014 at 03:35:16PM -0700, Derek wrote: > > Hi every one > > I'm currently working on VirtualMonitor in my leisure time. It allows you > > to use compute/tablet/smartphone as a second monitor for your primary > > computer. please refer to http://virtualmonitor.github.io for more > > information. Currently I have released very basic version for > > windows2000-windows7 to demonstrate the project is feasible. When I was > > trying to make a further step on windows, I realized it is difficult for > an > > individual, as it is not open source and also without technical support > > from Microsoft. > > > > Then I want to move to linux, and I found Ilija Hadzic's post about > Virtual > > CRTCs. his post is here: > > > http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html > > In his implementation, GPU driver can create arbitrary number of CRTCs > > (configurable by user) instead of only those CRTCs that represent real > > hardware. > > It is very useful not only for VirtualMonitor, but also > > VNC/Virtualization/USB display etc. based on this implementation those > > application will be able to take full advantage of the physical graphic > > card(3D acceleration). > > > > I want raise Ilijia's original question agian, if anybody in this > community > > think Virtual CRTCs is useful, and willing to work together to make a > > further progress. > > My thought is if can implement a driver independent layer between dri and > > vendor specific GPU driver, with some general API. maybe implement this > > based one vendor related GPU first? e.g. based on Ilijia's implementation > > for Radeon as a daemon? > > > > GPU driver is not my expertise, If some expert from this community think > > this feature is interesting, and willing to initiate a project for this > > feature, that will be great. Then people can work and discuss together. > > > > Any comments regarding to Virtual CRTC or VirtualMonitor are very > welcome. > > Thanks. > > I think the concept is overall sound (haven't looked at the old patches in > detail).For the actual implementation I think a separate virtual drm > driver is now > the better approach, since with dma-buf and soon native fence support we > can do this now properly. > > And especially now that we have multi-gpu support in X it should integrate > almost seamlessly into X (and other display managers with multi-gpu > support). Instead of requering special support in all drivers. > > Another thing for which iirc no one ever proposed a decent solution is > synchronization to consumers of the frontbuffers for virtual gpus. So I > guess the driver-private ioctl interface to make that magic work will be > key. > > A (configurable) virtual gpu should also be really useful for automated > testing, e.g. of hot-plug and unplug (both drm core and userspace). The > v4l folks have such a driver (recently massively revamped for 3.18) and it > looks extremely useful. > > For the configuration interface I guess a few simple module options to get > started should be enough, eventually we can switch to configfs (or > similar) to be able to configure and create/destroy virtual gpus at > runtime. > > Just my random thoughts, probably good to kickstart the discussion with > some quick patches and chat with people on #dri-devel on freenode irc. > > Cheers, Daniel > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch > [-- Attachment #1.2: Type: text/html, Size: 5053 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Ilija Hadzic's Virtual CRTCs feature discuss 2014-08-25 19:02 ` Derek @ 2014-08-26 8:18 ` Daniel Vetter [not found] ` <CAOMUgmhOGBE8_LDFa9pMcyyhott4SaA5jm0wQgxJXZ2+-9u=HA@mail.gmail.com> 0 siblings, 1 reply; 6+ messages in thread From: Daniel Vetter @ 2014-08-26 8:18 UTC (permalink / raw) To: Derek; +Cc: dri-devel On Mon, Aug 25, 2014 at 12:02:09PM -0700, Derek wrote: > Hi, Daniel > Thanks for your response! > Talking about v4l's virtual gpu driver? Could you please tell some more > informations. is this driver in > git.linuxtv.org/cgit.cgi/media_tree.git > I want to take a look this driver. but I can't find it in their git > repository. Or is there any introduction post related this driver? Thanks. It isn't merged yet afaik, but Hans Verkuil has made a nice presentation about it at LinuxCon. Unfortunately the linuxcon page doesn't even have the slides afaics. http://lccona14.sched.org/event/2e156d3ce84309b2932f2e7a512904e0#.U_xCcjSmXmE The driver was called vidid (there's an older one called vidi apparently). But I don't think it's a good model for a virtual drm driver, if that's why you want to look at it. Just mentioned it to show that there's lots of uses for virtual drivers. -Daniel > > Best wishes > Derek > > > On Mon, Aug 25, 2014 at 6:12 AM, Daniel Vetter <daniel@ffwll.ch> wrote: > > > On Mon, Aug 18, 2014 at 03:35:16PM -0700, Derek wrote: > > > Hi every one > > > I'm currently working on VirtualMonitor in my leisure time. It allows you > > > to use compute/tablet/smartphone as a second monitor for your primary > > > computer. please refer to http://virtualmonitor.github.io for more > > > information. Currently I have released very basic version for > > > windows2000-windows7 to demonstrate the project is feasible. When I was > > > trying to make a further step on windows, I realized it is difficult for > > an > > > individual, as it is not open source and also without technical support > > > from Microsoft. > > > > > > Then I want to move to linux, and I found Ilija Hadzic's post about > > Virtual > > > CRTCs. his post is here: > > > > > http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html > > > In his implementation, GPU driver can create arbitrary number of CRTCs > > > (configurable by user) instead of only those CRTCs that represent real > > > hardware. > > > It is very useful not only for VirtualMonitor, but also > > > VNC/Virtualization/USB display etc. based on this implementation those > > > application will be able to take full advantage of the physical graphic > > > card(3D acceleration). > > > > > > I want raise Ilijia's original question agian, if anybody in this > > community > > > think Virtual CRTCs is useful, and willing to work together to make a > > > further progress. > > > My thought is if can implement a driver independent layer between dri and > > > vendor specific GPU driver, with some general API. maybe implement this > > > based one vendor related GPU first? e.g. based on Ilijia's implementation > > > for Radeon as a daemon? > > > > > > GPU driver is not my expertise, If some expert from this community think > > > this feature is interesting, and willing to initiate a project for this > > > feature, that will be great. Then people can work and discuss together. > > > > > > Any comments regarding to Virtual CRTC or VirtualMonitor are very > > welcome. > > > Thanks. > > > > I think the concept is overall sound (haven't looked at the old patches in > > detail).For the actual implementation I think a separate virtual drm > > driver is now > > the better approach, since with dma-buf and soon native fence support we > > can do this now properly. > > > > And especially now that we have multi-gpu support in X it should integrate > > almost seamlessly into X (and other display managers with multi-gpu > > support). Instead of requering special support in all drivers. > > > > Another thing for which iirc no one ever proposed a decent solution is > > synchronization to consumers of the frontbuffers for virtual gpus. So I > > guess the driver-private ioctl interface to make that magic work will be > > key. > > > > A (configurable) virtual gpu should also be really useful for automated > > testing, e.g. of hot-plug and unplug (both drm core and userspace). The > > v4l folks have such a driver (recently massively revamped for 3.18) and it > > looks extremely useful. > > > > For the configuration interface I guess a few simple module options to get > > started should be enough, eventually we can switch to configfs (or > > similar) to be able to configure and create/destroy virtual gpus at > > runtime. > > > > Just my random thoughts, probably good to kickstart the discussion with > > some quick patches and chat with people on #dri-devel on freenode irc. > > > > Cheers, Daniel > > -- > > Daniel Vetter > > Software Engineer, Intel Corporation > > +41 (0) 79 365 57 48 - http://blog.ffwll.ch > > -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <CAOMUgmhOGBE8_LDFa9pMcyyhott4SaA5jm0wQgxJXZ2+-9u=HA@mail.gmail.com>]
* Re: Ilija Hadzic's Virtual CRTCs feature discuss [not found] ` <CAOMUgmhOGBE8_LDFa9pMcyyhott4SaA5jm0wQgxJXZ2+-9u=HA@mail.gmail.com> @ 2014-08-27 17:54 ` Daniel Vetter 2014-08-27 18:05 ` Derek 0 siblings, 1 reply; 6+ messages in thread From: Daniel Vetter @ 2014-08-27 17:54 UTC (permalink / raw) To: Derek, dri-devel Please don't drop mailing lists, especially when you've dug out some good information like the stuff below. Readding dri-devel. -Danel On Wed, Aug 27, 2014 at 7:21 PM, Derek <derek0883@gmail.com> wrote: > Hi Daniel > Thanks, Hans Verkuil's git repository is here > git://linuxtv.org/hverkuil/media_tree.git. branch name vivid2. > his slide is here: > http://events.linuxfoundation.org/sites/events/files/slides/v4l2-testing.pdf > And I'm agree that it isn't for virtual drm driver. > > I found that there are two virtual drm driver in kernel source code. > first one is vmwgfx driver/gpu/drm/vmwgfx > according to > http://mesa3d.org/vmware-guest.html > This driver gives a Linux virtual machine access to the host's GPU for > hardware-accelerated 3D. > > another one is gxl drivers/gpu/drm/gxl > It is for readhat virtualization KVM + spice. > > and seems drm infrastructure support virtual driver already. just search > DRM_MODE_ENCODER_VIRTUAL/DRM_MODE_CONNECTOR_VIRTUAL > > both driver need user space XServer driver support. > > I will take a look these drivers find out if i can use similar driver to > create virtual CRTC based on drm without extra userspace xserver driver. and > develop a virtualMonitor which allow you to use compute, tablet, smartphone > as a second monitor for your primary computer. an example page is > http://virtualmonitor.github.io > > Thanks a lots > > Best wishes > Derek > > > > On Tue, Aug 26, 2014 at 1:18 AM, Daniel Vetter <daniel@ffwll.ch> wrote: >> >> On Mon, Aug 25, 2014 at 12:02:09PM -0700, Derek wrote: >> > Hi, Daniel >> > Thanks for your response! >> > Talking about v4l's virtual gpu driver? Could you please tell some more >> > informations. is this driver in >> > git.linuxtv.org/cgit.cgi/media_tree.git >> > I want to take a look this driver. but I can't find it in their git >> > repository. Or is there any introduction post related this driver? >> > Thanks. >> >> It isn't merged yet afaik, but Hans Verkuil has made a nice presentation >> about it at LinuxCon. Unfortunately the linuxcon page doesn't even have >> the slides afaics. >> >> >> http://lccona14.sched.org/event/2e156d3ce84309b2932f2e7a512904e0#.U_xCcjSmXmE >> >> The driver was called vidid (there's an older one called vidi apparently). >> But I don't think it's a good model for a virtual drm driver, if that's >> why you want to look at it. Just mentioned it to show that there's lots of >> uses for virtual drivers. >> -Daniel >> >> > >> > Best wishes >> > Derek >> > >> > >> > On Mon, Aug 25, 2014 at 6:12 AM, Daniel Vetter <daniel@ffwll.ch> wrote: >> > >> > > On Mon, Aug 18, 2014 at 03:35:16PM -0700, Derek wrote: >> > > > Hi every one >> > > > I'm currently working on VirtualMonitor in my leisure time. It >> > > > allows you >> > > > to use compute/tablet/smartphone as a second monitor for your >> > > > primary >> > > > computer. please refer to http://virtualmonitor.github.io for more >> > > > information. Currently I have released very basic version for >> > > > windows2000-windows7 to demonstrate the project is feasible. When I >> > > > was >> > > > trying to make a further step on windows, I realized it is difficult >> > > > for >> > > an >> > > > individual, as it is not open source and also without technical >> > > > support >> > > > from Microsoft. >> > > > >> > > > Then I want to move to linux, and I found Ilija Hadzic's post about >> > > Virtual >> > > > CRTCs. his post is here: >> > > > >> > > >> > > http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html >> > > > In his implementation, GPU driver can create arbitrary number of >> > > > CRTCs >> > > > (configurable by user) instead of only those CRTCs that represent >> > > > real >> > > > hardware. >> > > > It is very useful not only for VirtualMonitor, but also >> > > > VNC/Virtualization/USB display etc. based on this implementation >> > > > those >> > > > application will be able to take full advantage of the physical >> > > > graphic >> > > > card(3D acceleration). >> > > > >> > > > I want raise Ilijia's original question agian, if anybody in this >> > > community >> > > > think Virtual CRTCs is useful, and willing to work together to make >> > > > a >> > > > further progress. >> > > > My thought is if can implement a driver independent layer between >> > > > dri and >> > > > vendor specific GPU driver, with some general API. maybe implement >> > > > this >> > > > based one vendor related GPU first? e.g. based on Ilijia's >> > > > implementation >> > > > for Radeon as a daemon? >> > > > >> > > > GPU driver is not my expertise, If some expert from this community >> > > > think >> > > > this feature is interesting, and willing to initiate a project for >> > > > this >> > > > feature, that will be great. Then people can work and discuss >> > > > together. >> > > > >> > > > Any comments regarding to Virtual CRTC or VirtualMonitor are very >> > > welcome. >> > > > Thanks. >> > > >> > > I think the concept is overall sound (haven't looked at the old >> > > patches in >> > > detail).For the actual implementation I think a separate virtual drm >> > > driver is now >> > > the better approach, since with dma-buf and soon native fence support >> > > we >> > > can do this now properly. >> > > >> > > And especially now that we have multi-gpu support in X it should >> > > integrate >> > > almost seamlessly into X (and other display managers with multi-gpu >> > > support). Instead of requering special support in all drivers. >> > > >> > > Another thing for which iirc no one ever proposed a decent solution is >> > > synchronization to consumers of the frontbuffers for virtual gpus. So >> > > I >> > > guess the driver-private ioctl interface to make that magic work will >> > > be >> > > key. >> > > >> > > A (configurable) virtual gpu should also be really useful for >> > > automated >> > > testing, e.g. of hot-plug and unplug (both drm core and userspace). >> > > The >> > > v4l folks have such a driver (recently massively revamped for 3.18) >> > > and it >> > > looks extremely useful. >> > > >> > > For the configuration interface I guess a few simple module options to >> > > get >> > > started should be enough, eventually we can switch to configfs (or >> > > similar) to be able to configure and create/destroy virtual gpus at >> > > runtime. >> > > >> > > Just my random thoughts, probably good to kickstart the discussion >> > > with >> > > some quick patches and chat with people on #dri-devel on freenode irc. >> > > >> > > Cheers, Daniel >> > > -- >> > > Daniel Vetter >> > > Software Engineer, Intel Corporation >> > > +41 (0) 79 365 57 48 - http://blog.ffwll.ch >> > > >> >> -- >> Daniel Vetter >> Software Engineer, Intel Corporation >> +41 (0) 79 365 57 48 - http://blog.ffwll.ch > > -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Ilija Hadzic's Virtual CRTCs feature discuss 2014-08-27 17:54 ` Daniel Vetter @ 2014-08-27 18:05 ` Derek 0 siblings, 0 replies; 6+ messages in thread From: Derek @ 2014-08-27 18:05 UTC (permalink / raw) To: Daniel Vetter; +Cc: dri-devel [-- Attachment #1.1: Type: text/plain, Size: 7474 bytes --] Thanks for loop dri-devel back. I didn't realize that I clicked "reply" instead of "reply-all" :( Best wishes Derek On Wed, Aug 27, 2014 at 10:54 AM, Daniel Vetter <daniel@ffwll.ch> wrote: > Please don't drop mailing lists, especially when you've dug out some > good information like the stuff below. Readding dri-devel. > -Danel > > On Wed, Aug 27, 2014 at 7:21 PM, Derek <derek0883@gmail.com> wrote: > > Hi Daniel > > Thanks, Hans Verkuil's git repository is here > > git://linuxtv.org/hverkuil/media_tree.git. branch name vivid2. > > his slide is here: > > > http://events.linuxfoundation.org/sites/events/files/slides/v4l2-testing.pdf > > And I'm agree that it isn't for virtual drm driver. > > > > I found that there are two virtual drm driver in kernel source code. > > first one is vmwgfx driver/gpu/drm/vmwgfx > > according to > > http://mesa3d.org/vmware-guest.html > > This driver gives a Linux virtual machine access to the host's GPU for > > hardware-accelerated 3D. > > > > another one is gxl drivers/gpu/drm/gxl > > It is for readhat virtualization KVM + spice. > > > > and seems drm infrastructure support virtual driver already. just search > > DRM_MODE_ENCODER_VIRTUAL/DRM_MODE_CONNECTOR_VIRTUAL > > > > both driver need user space XServer driver support. > > > > I will take a look these drivers find out if i can use similar driver to > > create virtual CRTC based on drm without extra userspace xserver driver. > and > > develop a virtualMonitor which allow you to use compute, tablet, > smartphone > > as a second monitor for your primary computer. an example page is > > http://virtualmonitor.github.io > > > > Thanks a lots > > > > Best wishes > > Derek > > > > > > > > On Tue, Aug 26, 2014 at 1:18 AM, Daniel Vetter <daniel@ffwll.ch> wrote: > >> > >> On Mon, Aug 25, 2014 at 12:02:09PM -0700, Derek wrote: > >> > Hi, Daniel > >> > Thanks for your response! > >> > Talking about v4l's virtual gpu driver? Could you please tell some > more > >> > informations. is this driver in > >> > git.linuxtv.org/cgit.cgi/media_tree.git > >> > I want to take a look this driver. but I can't find it in their git > >> > repository. Or is there any introduction post related this driver? > >> > Thanks. > >> > >> It isn't merged yet afaik, but Hans Verkuil has made a nice presentation > >> about it at LinuxCon. Unfortunately the linuxcon page doesn't even have > >> the slides afaics. > >> > >> > >> > http://lccona14.sched.org/event/2e156d3ce84309b2932f2e7a512904e0#.U_xCcjSmXmE > >> > >> The driver was called vidid (there's an older one called vidi > apparently). > >> But I don't think it's a good model for a virtual drm driver, if that's > >> why you want to look at it. Just mentioned it to show that there's lots > of > >> uses for virtual drivers. > >> -Daniel > >> > >> > > >> > Best wishes > >> > Derek > >> > > >> > > >> > On Mon, Aug 25, 2014 at 6:12 AM, Daniel Vetter <daniel@ffwll.ch> > wrote: > >> > > >> > > On Mon, Aug 18, 2014 at 03:35:16PM -0700, Derek wrote: > >> > > > Hi every one > >> > > > I'm currently working on VirtualMonitor in my leisure time. It > >> > > > allows you > >> > > > to use compute/tablet/smartphone as a second monitor for your > >> > > > primary > >> > > > computer. please refer to http://virtualmonitor.github.io for > more > >> > > > information. Currently I have released very basic version for > >> > > > windows2000-windows7 to demonstrate the project is feasible. When > I > >> > > > was > >> > > > trying to make a further step on windows, I realized it is > difficult > >> > > > for > >> > > an > >> > > > individual, as it is not open source and also without technical > >> > > > support > >> > > > from Microsoft. > >> > > > > >> > > > Then I want to move to linux, and I found Ilija Hadzic's post > about > >> > > Virtual > >> > > > CRTCs. his post is here: > >> > > > > >> > > > >> > > > http://lists.freedesktop.org/archives/dri-devel/2011-November/015975.html > >> > > > In his implementation, GPU driver can create arbitrary number of > >> > > > CRTCs > >> > > > (configurable by user) instead of only those CRTCs that represent > >> > > > real > >> > > > hardware. > >> > > > It is very useful not only for VirtualMonitor, but also > >> > > > VNC/Virtualization/USB display etc. based on this implementation > >> > > > those > >> > > > application will be able to take full advantage of the physical > >> > > > graphic > >> > > > card(3D acceleration). > >> > > > > >> > > > I want raise Ilijia's original question agian, if anybody in this > >> > > community > >> > > > think Virtual CRTCs is useful, and willing to work together to > make > >> > > > a > >> > > > further progress. > >> > > > My thought is if can implement a driver independent layer between > >> > > > dri and > >> > > > vendor specific GPU driver, with some general API. maybe implement > >> > > > this > >> > > > based one vendor related GPU first? e.g. based on Ilijia's > >> > > > implementation > >> > > > for Radeon as a daemon? > >> > > > > >> > > > GPU driver is not my expertise, If some expert from this community > >> > > > think > >> > > > this feature is interesting, and willing to initiate a project for > >> > > > this > >> > > > feature, that will be great. Then people can work and discuss > >> > > > together. > >> > > > > >> > > > Any comments regarding to Virtual CRTC or VirtualMonitor are very > >> > > welcome. > >> > > > Thanks. > >> > > > >> > > I think the concept is overall sound (haven't looked at the old > >> > > patches in > >> > > detail).For the actual implementation I think a separate virtual drm > >> > > driver is now > >> > > the better approach, since with dma-buf and soon native fence > support > >> > > we > >> > > can do this now properly. > >> > > > >> > > And especially now that we have multi-gpu support in X it should > >> > > integrate > >> > > almost seamlessly into X (and other display managers with multi-gpu > >> > > support). Instead of requering special support in all drivers. > >> > > > >> > > Another thing for which iirc no one ever proposed a decent solution > is > >> > > synchronization to consumers of the frontbuffers for virtual gpus. > So > >> > > I > >> > > guess the driver-private ioctl interface to make that magic work > will > >> > > be > >> > > key. > >> > > > >> > > A (configurable) virtual gpu should also be really useful for > >> > > automated > >> > > testing, e.g. of hot-plug and unplug (both drm core and userspace). > >> > > The > >> > > v4l folks have such a driver (recently massively revamped for 3.18) > >> > > and it > >> > > looks extremely useful. > >> > > > >> > > For the configuration interface I guess a few simple module options > to > >> > > get > >> > > started should be enough, eventually we can switch to configfs (or > >> > > similar) to be able to configure and create/destroy virtual gpus at > >> > > runtime. > >> > > > >> > > Just my random thoughts, probably good to kickstart the discussion > >> > > with > >> > > some quick patches and chat with people on #dri-devel on freenode > irc. > >> > > > >> > > Cheers, Daniel > >> > > -- > >> > > Daniel Vetter > >> > > Software Engineer, Intel Corporation > >> > > +41 (0) 79 365 57 48 - http://blog.ffwll.ch > >> > > > >> > >> -- > >> Daniel Vetter > >> Software Engineer, Intel Corporation > >> +41 (0) 79 365 57 48 - http://blog.ffwll.ch > > > > > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch > [-- Attachment #1.2: Type: text/html, Size: 11431 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-08-27 18:05 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-18 22:35 Ilija Hadzic's Virtual CRTCs feature discuss Derek
2014-08-25 13:12 ` Daniel Vetter
2014-08-25 19:02 ` Derek
2014-08-26 8:18 ` Daniel Vetter
[not found] ` <CAOMUgmhOGBE8_LDFa9pMcyyhott4SaA5jm0wQgxJXZ2+-9u=HA@mail.gmail.com>
2014-08-27 17:54 ` Daniel Vetter
2014-08-27 18:05 ` Derek
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox