-
Notifications
You must be signed in to change notification settings - Fork 367
Home
Field G. Van Zee edited this page Jul 8, 2018
·
24 revisions
Welcome to the blis wiki!
The following documents are present within the docs
directory of the BLIS source distribution. We link to them here for your markdown-rendering convenience.
Documents for everyone:
- Build System. This document covers the basics of configuring and building BLIS libraries. Other topics such as installing and linking against BLIS, running basic checks/tests, and uninstalling are also covered.
- Testsuite This document describes how to run BLIS's highly parameterized and configurable test suite, walks through all of its options (general and operation-specific), and how to interpret the results. A brief explanation of the BLIS's netlib BLAS test drivers is also included.
- BLIS Typed API Reference. Here we document the so-called "typed" (or BLAS-like) API. This is the API that many users who are already familiar with the BLAS will likely want to use. The other main API in BLIS, the object API, is not yet documented. However, you may find lots of example code for both the typed and object APIs in the examples directory included in the BLIS source distribution.
- Multithreading. This document describes how to use the multithreading features of BLIS, the methods of requesting parallelism, and the underlying way that BLIS expresses parallelism within level-3 operations.
- Release Notes. This document tracks a summary of changes included with each new version of BLIS, along with contributor credits for key features.
- Frequently Asked Questions. If you have general questions about BLIS, please read this FAQ. If you can't find the answer to your question, please feel free to join the blis-devel mailing list and post a question. We also have a blis-discuss mailing list that anyone can post to (even without joining).
Documents for github contributors:
- Coding Conventions. Interested in contributing to BLIS? Please read this document before getting started so that you can format your code in accordance with BLIS's standards. (We won't turn away code contributions that are not 100% in compliance with these standards, but following these guidelines as much as possible will be sincerely appreciated by the project maintainers.)
Documents for developers:
- Kernels Guide. If you would like to learn more about the types of kernels that BLIS exposes, their semantics, the operations that each kernel accelerates, and various implementation issues, please read this guide. (It currently focuses on level-3 microkernels, though in the future the details of level-1v and -1f kernels will be filled in. In the meantime, if you would like to learn more about level-1v/-1f kernels, please find and study an existing implementation in the kernels directory).
-
Configuration Guide. If you would like to learn how to add new sub-configurations or configuration families, or are simply interested in learning how BLIS organizes its configurations and kernel sets, please read this thorough walkthrough of the configuration system. (NOTE: "configuration" in this context is not the same as the options given to the
configure
script, though the configuration is indeed specified/selected at the time thatconfigure
is run. - Hardware Support. This document maintains a table of supported microarchitectures, which includes the corresponding sub-configurations as well as the specific kernels supported for each type of hardware.