p2pmem-test | space test platform for testing the p2pdma Linux kernel

 by   sbates130272 C Version: v1.1 License: No License

kandi X-RAY | p2pmem-test Summary

kandi X-RAY | p2pmem-test Summary

p2pmem-test is a C library. p2pmem-test has no bugs, it has no vulnerabilities and it has low support. You can download it from GitHub.

A user-space test platform for testing the p2pdma Linux kernel framework with NVMe CMBs and other PCIe BAR memory.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              p2pmem-test has a low active ecosystem.
              It has 18 star(s) with 14 fork(s). There are 4 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 2 open issues and 6 have been closed. On average issues are closed in 449 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of p2pmem-test is v1.1

            kandi-Quality Quality

              p2pmem-test has 0 bugs and 0 code smells.

            kandi-Security Security

              p2pmem-test has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              p2pmem-test code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              p2pmem-test does not have a standard license declared.
              Check the repository for any license declaration and review the terms closely.
              OutlinedDot
              Without a license, all rights are reserved, and you cannot use the library in your applications.

            kandi-Reuse Reuse

              p2pmem-test releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of p2pmem-test
            Get all kandi verified functions for this library.

            p2pmem-test Key Features

            No Key Features are available at this moment for p2pmem-test.

            p2pmem-test Examples and Code Snippets

            No Code Snippets are available at this moment for p2pmem-test.

            Community Discussions

            No Community Discussions are available at this moment for p2pmem-test.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install p2pmem-test

            In order to run any P2P traffic, you'll need to have a (Linux based) OS that supports p2pdma. This framework is available in all Linux kernels 4.20 or newer, however it is NOT compiled in by default. You will almost certainly have to compile a kernel from source and install that. The instructions on how to do this are beyond the scope of this document but there is a tool that can help in my kernel-tools repo. You may want to install the separate p2pmem-pci module installed to expose the device to userspace. Once installed, you should see the device exposed as a /dev/p2pmemX. Note howeever this step is no longer mandatory as this driver is included in the kernel package files generated by kernel-tools. Make sure your system has at least one p2pdma capable device. Examples include an Eideticom IOMEM device, a Microsemi NVRAM card or a CMB enabled NVMe SSD that supports the WDS and RDS features (e.g. The Everspin NVNitro card or the Eideticom NoLoadTM device). Basically this is any PCI EP capable of exposing a BAR with a driver that ties into the p2pdma framework.
            In order to run any P2P traffic, you'll need to have a (Linux based) OS that supports p2pdma. This framework is available in all Linux kernels 4.20 or newer, however it is NOT compiled in by default. You will almost certainly have to compile a kernel from source and install that. The instructions on how to do this are beyond the scope of this document but there is a tool that can help in my kernel-tools repo.
            You may want to install the separate p2pmem-pci module installed to expose the device to userspace. Once installed, you should see the device exposed as a /dev/p2pmemX. Note howeever this step is no longer mandatory as this driver is included in the kernel package files generated by kernel-tools.
            Make sure your system has at least one p2pdma capable device. Examples include an Eideticom IOMEM device, a Microsemi NVRAM card or a CMB enabled NVMe SSD that supports the WDS and RDS features (e.g. The Everspin NVNitro card or the Eideticom NoLoadTM device). Basically this is any PCI EP capable of exposing a BAR with a driver that ties into the p2pdma framework.
            In addition to the p2pmem capable device you need at least one other NVMe SSD. This does not have to be CMB enabled (but it is OK if it does support CMB), any standard NVMe SSD will do. Preferably you will have more than one NVMe SSD but its not a requirement. Ideally place the two (or more) devices noted in the two previous points behind a PCIe switch (for example the Microsemi Switchtec or a PLX switch). If you do not have a switch you can connect both devices to the Root Complex (RC) on the CPU but two things may happen: Performance may drop. Many RCs are inefficient at routing P2P traffic. It might not work at all. Many RCs block P2P traffic.
            You'll almost certainly want to disable the IOMMU in your system via either the BIOS or the kernel.
            You may also need to disable the PCIe Access Control Services (ACS) by either the BIOS and/or the kernel because TLP redirection (activated as part of ACS) kills P2P traffic.
            Finally, p2pmem-test requires the libargconfig submodule. You'll need to either clone recursively or via git submodule update --init.

            Support

            p2pmem-test is an active project. We will happily consider Pull Requests (PRs) submitted against the official repo.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/sbates130272/p2pmem-test.git

          • CLI

            gh repo clone sbates130272/p2pmem-test

          • sshUrl

            git@github.com:sbates130272/p2pmem-test.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link