- Synopsis. A short summary. My contribution would be working on the Vulkan driver which would be measurable with video streaming benchmarks. This would demonstrate appropriate buffering, bit rate, and lag time. I would expect it can handle YouTube but it might be a little too soon for other video streaming such as Skype for linux. The benefits are as fewer Linux distributions support Adobe Flash perhaps to licensing concerns, there is html5 which utilizes javascript. Javascript uses concurrency or parallelism which could have better performance on a system which uses low level FPGA which the Vulkan API is designed to do. Vulkan is designed to be cross platform meaning that it should work with AMD as well as Intel and Nvidia video cards whether they are embedded or are discrete. Although there is primitive support for Arch Linux, the GPU profiling tool is complex for Nvidia.
- Benefits to the Community. What novel technologies or approaches will be demonstrated? Windows is investing time into Direct X 12. This was shown to be a challenger to the Vulkan API. By investing in Vulkan we can gain a strong backing from the gaming community as well as business professionals who use embedded GPU in their laptops. As of right now, steam works on Linux but it also works on Windows.
- Deliverables. Give a brief, clear work breakdown structure with milestones and deadlines. Make sure to label deliverables as optional or required. You may want plan to start by producing some kind of whitepaper, or planning the project in traditional software engineering style. Work should include
- investigation I have taken several courses on Coursera on FPGA as well as a member of several computer organizations which provide Safari, Lynda, books24/7. I have done a great amount of research on this topic while as an undergraduate and wish to make Linux better. I have resources as a student should I have difficulty through the ACM/IEEE/ISACA and academic as well as community libraries.
- programming I would make every effort to have a working prototype by mid September.
- documentation: I would post on my blog XorgRobWahl and be available for questions as an active community of the Linux/xorg Community.
- dissemination I am open to ideas from the community about how to proceed in this regard
- Description. A list of project details (rough architecture, etc).
I have participated in putting patches on https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayersI believe that a wrapper service is more appropriate than trying to restart the project. Right now there are many implementations and I would try to generalize them to use the Vulkan API including SPIRV. I like their advanced blend modes, 2d shapes, and multi-GPU approach. I also like their effort to go with an open standard.I also like SR-IOV and how it appears to be a clean way of communicating with PCIe components. Although not all GPUs are PCIe based, it provides some interesting ideas.
I propose following design changes. I was concerned about using a python runtime. I have supported an older blackberry server which used Java and was subject to break should the version of Java be upgraded. I would try to make the most future endurance version I could. would make a system initiated version of a daemon which uses C as a primary language. C and C++ are two of my strongest languages both having access to memory access on the computer. From C or C++ it is possible to initialize threads. I would then use the existing Khronos link as enclosed which provides an API for manipulating the FPGA which are used with the video cards. AMD was a leader in project Vulkan and so I would use this to generalize a CUDA version to work with Nvidia. I do not see Vulkan as a replacement to openGL. I have watched a Usenix security videos on shared memory execution. This involves multicore execution. There are often multiple processor cores in the computer. One might be processing the driver software and the other a piece of malicious code. The cores often have a shared L1 cache. This is defined in The common CVEs
Variant 1 (CVE-2017-5753): Mitigations are provided with the security update included in this bulletin. NVIDIA expects to work together with its ecosystem partners on future updates to further strengthen mitigations. Variant 2 (CVE-2017-5715): Mitigations are provided with the security update included in this bulletin. NVIDIA expects to work together with its ecosystem partners on future updates to further strengthen mitigations. Variant 3 (CVE-2017-5754): At this time, NVIDIA has no reason to believe that Shield TV/tablet is vulnerable to this variant.Some might argue that security is a lower priority than timely delivery. I believe from working in IT the way to make work for it to be perceived as a viable product it should have every effort to be failure resistant. Simplicity is important and Nvidia presents the idea of approaching zero overhead. This idea is expansive but I plan on making the Vulkan footprint as small as possible for security and maintain ability. A possible suggestion is to use the Rust programming language developed by Mozilla. Rust is stylistically like C++ but has memory and thread safety built in.Tedhudek. “Overview of Single Root I/O Virtualization (SR-IOV).” Microsoft Docs, docs.microsoft.com/en-us/windows-hardware/drivers/network/overview-of-single-root-i-o-virtualization--sr-iov-.
- Related Work. A list of other people's work. Could be as simple as a URL with one sentence description. Be sure to explain how the proposed work is different from similar related work.
Works CitedFuturemarkTV. “Compare Vulkan and DirectX 12 with 3DMark.” YouTube, YouTube, 23 Mar. 2017, m.youtube.com/watch?v=E3t7JwdF6W8.gameranxTV. “What Is Vulkan & Why Should Gamers CARE?” YouTube, YouTube, 30 Apr. 2016, m.youtube.com/watch?feature=youtu.be&v=dvioALNs_Bc.Mark Kilgard, Graphics Software Engineer at NVIDIA Follow. “NVIDIA OpenGL and Vulkan Support for 2017.” LinkedIn SlideShare, 2 Aug. 2017, www.slideshare.net/mobile/Mark_Kilgard/nvidia-opengl-and-vulkan-support-for-2017.USENIXAssociation. “USENIX Security '17 - Strong and Efficient Cache Side-Channel Protection...” YouTube, YouTube, 15 Sept. 2017, m.youtube.com/watch?v=4_-c7ueHHqc.“WTF Is Going on with DX12 and Vulkan?” YouTube, 19 Sept. 2016, youtu.be/r0fgEVEgK_k.Similar but incomplete versions consist ofhttps://github.com/NVIDIA/nvidia-dockerThis is a project by Nvidia using the open source project Docker. However this is designed specifically for FPGA on Nvidia video cards leaving out AMD and Intel. This is not generic for other computer architectures. It also is not designed as a daemon because it Docker runs on the operating system with native execution.Also similar is Vulkano which could be found at https://github.com/vulkano-rs/vulkano . The authors claim that their software is not ready for production machines. They try to rewrite Project Vulkan and do something similar but better including the pieces that interact with the FPGAs on the GPU. This is a huge task.
No comments:
Post a Comment