[arrayfire] 22/41: README.md restructuring
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Mon Mar 21 14:56:23 UTC 2016
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch debian/experimental
in repository arrayfire.
commit f2d60b666efd7ee6cd24d2783531650461bc36e2
Author: mlloreda <miguel at arrayfire.com>
Date: Mon Mar 14 15:24:19 2016 -0400
README.md restructuring
* Reorganized structure of the document. Most notably, the example code
has been pulled near the top and the contact section has been pushed to the
bottom of the document.
* `Hello, world` example has been stripped down
* Added a new example, featuring a stripped version of `conway.cpp`
* Conway GIF
* Citation information has been moved to new location, `.github/CITATION.md`
* Link to `forge` in introductory paragraph
* New 'Language Wrapper' section
* Removed `techical at arrayfire.com` email address. Users should use the
issue tracker or the Google Groups mailing list, instead.
* Example code now using two-space indentation.
---
.github/CITATION.md | 24 +++++++
README.md | 185 ++++++++++++++++++++++++----------------------------
assets | 2 +-
3 files changed, 112 insertions(+), 99 deletions(-)
diff --git a/.github/CITATION.md b/.github/CITATION.md
new file mode 100644
index 0000000..4e78352
--- /dev/null
+++ b/.github/CITATION.md
@@ -0,0 +1,24 @@
+If you redistribute ArrayFire, please follow the terms established in
+[the license](../LICENSE). If you wish to cite ArrayFire in an academic
+publication, please use the following reference:
+
+Formatted:
+```
+Yalamanchili, P., Arshad, U., Mohammed, Z., Garigipati, P., Entschev, P.,
+Kloppenborg, B., Malcolm, J. and Melonakos, J. (2015).
+ArrayFire - A high performance software library for parallel computing with an
+easy-to-use API. Atlanta: AccelerEyes. Retrieved from https://github.com/arrayfire/arrayfire
+```
+
+BibTeX:
+```bibtex
+ at misc{Yalamanchili2015,
+abstract = {ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA, OpenCL and native CPU) make it platform independent and highly portable. A few lines of code in ArrayFire can replace dozens of lines of parallel computing code, saving you valuable time and lowering development costs.},
+address = {Atlanta},
+author = {Yalamanchili, Pavan and Arshad, Umar and Mohammed, Zakiuddin and Garigipati, Pradeep and Entschev, Peter and Kloppenborg, Brian and Malcolm, James and Melonakos, John},
+publisher = {AccelerEyes},
+title = {{ArrayFire - A high performance software library for parallel computing with an easy-to-use API}},
+url = {https://github.com/arrayfire/arrayfire},
+year = {2015}
+}
+```
diff --git a/README.md b/README.md
index f43b9fd..5b4a054 100644
--- a/README.md
+++ b/README.md
@@ -1,139 +1,128 @@
<a href="http://arrayfire.com/"><img src="http://arrayfire.com/logos/arrayfire_logo_whitebkgnd.png" width="300"></a>
-ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its **array** based function set makes parallel programming simple.
+ArrayFire is a high performance software library for parallel computing with an
+easy-to-use API. Its **array** based function set makes parallel programming
+simple.
-ArrayFire's multiple backends (**CUDA**, **OpenCL** and native **CPU**) make it platform independent and highly portable.
+ArrayFire's multiple backends (**CUDA**, **OpenCL** and native **CPU**) make it
+platform independent and highly portable. ArrayFire provides visualization
+capabilities using our OpenGL-based,
+[high performance visualization library](https://github.com/arrayfire/forge).
-A few lines of code in ArrayFire can replace dozens of lines of parallel computing code, saving you valuable time and lowering development costs.
+A few lines of code in ArrayFire can replace dozens of lines of parallel
+computing code, saving you valuable time and lowering development costs.
-### Build ArrayFire from source
-To build ArrayFire from source, please follow the instructions on our [wiki](https://github.com/arrayfire/arrayfire/wiki).
-
-### Download ArrayFire Installers
-ArrayFire binary installers can be downloaded at the [ArrayFire Downloads](http://go.arrayfire.com/l/37882/2015-03-31/mmhqy) page.
-
-### Support and Contact Info [](https://gitter.im/arrayfire/arrayfire?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-
-* Google Groups: https://groups.google.com/forum/#!forum/arrayfire-users
-* ArrayFire Services: [Consulting](http://arrayfire.com/consulting/) | [Support](http://arrayfire.com/support/) | [Training](http://arrayfire.com/training/)
-* ArrayFire Blogs: http://arrayfire.com/blog/
-* Email: <mailto:technical at arrayfire.com>
-
-### Build Status
-| | Linux x86 | Linux armv7l | Linux aarch64 | Windows | OSX |
-|:-------:|:---------:|:------------:|:-------------:|:-------:|:---:|
+| | Linux x86_64 | Linux armv7l | Linux aarch64 | Windows | OSX |
+|:-------:|:------------:|:------------:|:-------------:|:-------:|:---:|
| Build | [](http://ci.arrayfire.org/job/arrayfire-linux/job/build/branch/devel/) | [](http://ci.arrayfire.org/job/arrayfire-tegrak1/job/build/branch/devel/) | [](http://ci.arrayfire.org/job/arrayfire-tegrax1/job/build/ [...]
| Test | [](http://ci.arrayfire.org/job/arrayfire-linux/job/test/branch/devel/) | [](http://ci.arrayfire.org/job/arrayfire-tegrak1/job/test/branch/devel/) | [](http://ci.arrayfire.org/job/arrayfire-tegrax1/job/test/branch [...]
-Test coverage: [](https://coveralls.io/r/arrayfire/arrayfire?branch=HEAD)
+### Installation
-### Example
+You can install the ArrayFire library from one of the following ways:
-``` C++
+#### Official installers
-#include <arrayfire.h>
-#include <cstdio>
+Execute one of our [official binary installers](https://arrayfire.com/download)
+for Linux, OSX, and Windows platforms.
-using namespace af;
+#### Build from source
-int main(int argc, char *argv[])
-{
- try {
+Build from source by following instructions on our
+[wiki](https://github.com/arrayfire/arrayfire/wiki).
- // Select a device and display arrayfire info
- int device = argc > 1 ? atoi(argv[1]) : 0;
- af::setDevice(device);
- af::info();
+### Examples
- printf("Create a 5-by-3 matrix of random floats on the GPU\n");
- array A = randu(5,3, f32);
- af_print(A);
+The following examples are simplified versions of
+[`helloworld.cpp`](https://github.com/arrayfire/arrayfire/tree/devel/examples/helloworld/helloworld.cpp)
+and
+[`conway_pretty.cpp`](https://github.com/arrayfire/arrayfire/tree/devel/examples/graphics/conway_pretty.cpp),
+respectively. For more code examples, visit the
+[`examples/`](https://github.com/arrayfire/arrayfire/tree/devel/examples)
+directory.
- printf("Element-wise arithmetic\n");
- array B = sin(A) + 1.5;
- af_print(B);
+#### Hello, world!
- printf("Negate the first three elements of second column\n");
- B(seq(0, 2), 1) = B(seq(0, 2), 1) * -1;
- af_print(B);
+```cpp
+array A = randu(5, 3, f32); // Create 5x3 matrix of random floats on the GPU
+array B = sin(A) + 1.5; // Element-wise arithmetic
+array C = fft(B); // Fourier transform the result
- printf("Fourier transform the result\n");
- array C = fft(B);
- af_print(C);
+float d[] = { 1, 2, 3, 4, 5, 6 };
+array D(2, 3, d, afHost); // Create 2x3 matrix from host data
+D.col(0) = D.col(end); // Copy last column onto first
- printf("Grab last row\n");
- array c = C.row(end);
- af_print(c);
+array vals, inds;
+sort(vals, inds, A); // Sort A and print sorted array and corresponding indices
+af_print(vals);
+af_print(inds);
+```
- printf("Create 2-by-3 matrix from host data\n");
- float d[] = { 1, 2, 3, 4, 5, 6 };
- array D(2, 3, d, af::afHost);
- af_print(D);
+#### Conway's Game of Life
- printf("Copy last column onto first\n");
- D.col(0) = D.col(end);
- af_print(D);
+Visit the
+[Wikipedia page](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) for a
+description of Conway's Game of Life.
- // Sort A
- printf("Sort A and print sorted array and corresponding indices\n");
- array vals, inds;
- sort(vals, inds, A);
- af_print(vals);
- af_print(inds);
+```cpp
+static const float h_kernel[] = {1, 1, 1, 1, 0, 1, 1, 1, 1};
+static const array kernel(3, 3, h_kernel, afHost);
- } catch (af::exception& e) {
- fprintf(stderr, "%s\n", e.what());
- throw;
- }
+array state = (randu(128, 128, f32) > 0.5).as(f32); // Generate starting state
+Window myWindow(256, 256);
+while(!myWindow.close()) {
+ array nHood = convolve(state, kernel); // Obtain neighbors
+ array C0 = (nHood == 2); // Generate conditions for life
+ array C1 = (nHood == 3);
+ state = state * C0 + C1; // Update state
+ myWindow.image(state); // Display
}
```
+<p align="center">
+<img src="https://github.com/arrayfire/assets/blob/master/gifs/conway.gif" alt="Conway's Game of Life" height="256" width="256">
+</p>
+
### Documentation
-You can find our complete documentation over [here](http://www.arrayfire.com/docs/index.htm).
+You can find our complete documentation [here](http://www.arrayfire.com/docs/index.htm).
Quick links:
-- [Download Binaries](http://www.arrayfire.com/download/)
-- [List of functions](http://www.arrayfire.com/docs/group__arrayfire__func.htm)
-- [Tutorials](http://www.arrayfire.com/docs/gettingstarted.htm)
-- [Examples](http://www.arrayfire.com/docs/examples.htm)
+* [List of functions](http://www.arrayfire.org/docs/group__arrayfire__func.htm)
+* [Tutorials](http://www.arrayfire.org/docs/usergroup0.htm)
+* [Examples](http://www.arrayfire.org/docs/examples.htm)
+* [Blog](http://arrayfire.com/blog/)
-### Contribute
+### Language wrappers
-Contributions of any kind are welcome! Please refer to
-[this document](https://github.com/arrayfire/arrayfire/blob/master/CONTRIBUTING.md)
- to learn more about how you can get involved with ArrayFire.
+We currently support the following language wrappers for ArrayFire:
-## Citations and Acknowledgements
+* [`arrayfire-python`](https://github.com/arrayfire/arrayfire-python)
+* [`arrayfire-rust`](https://github.com/arrayfire/arrayfire-rust)
-If you redistribute ArrayFire, please follow the terms established in
-[the license](LICENSE).
-If you wish to cite ArrayFire in an academic publication, please use the
-following reference:
+Wrappers for other languages are a work in progress:
-Formatted:
-```
-Yalamanchili, P., Arshad, U., Mohammed, Z., Garigipati, P., Entschev, P.,
-Kloppenborg, B., Malcolm, J. and Melonakos, J. (2015).
-ArrayFire - A high performance software library for parallel computing with an
-easy-to-use API. Atlanta: AccelerEyes. Retrieved from https://github.com/arrayfire/arrayfire
-```
+[`arrayfire-dotnet`](https://github.com/arrayfire/arrayfire-dotnet), [`arrayfire-fortran`](https://github.com/arrayfire/arrayfire-fortran), [`arrayfire-go`](https://github.com/arrayfire/arrayfire-go), [`arrayfire-java`](https://github.com/arrayfire/arrayfire-java), [`arrayfire-lua`](https://github.com/arrayfire/arrayfire-lua), [`arrayfire-nodejs`](https://github.com/arrayfire/arrayfire-js), [`arrayfire-r`](https://github.com/arrayfire/arrayfire-r)
-BibTeX:
-```bibtex
- at misc{Yalamanchili2015,
-abstract = {ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA, OpenCL and native CPU) make it platform independent and highly portable. A few lines of code in ArrayFire can replace dozens of lines of parallel computing code, saving you valuable time and lowering development costs.},
-address = {Atlanta},
-author = {Yalamanchili, Pavan and Arshad, Umar and Mohammed, Zakiuddin and Garigipati, Pradeep and Entschev, Peter and Kloppenborg, Brian and Malcolm, James and Melonakos, John},
-publisher = {AccelerEyes},
-title = {{ArrayFire - A high performance software library for parallel computing with an easy-to-use API}},
-url = {https://github.com/arrayfire/arrayfire},
-year = {2015}
-}
-```
+### Contributing
+
+Contributions of any kind are welcome! Please refer to
+[CONTRIBUTING.md](https://github.com/arrayfire/arrayfire/blob/master/CONTRIBUTING.md)
+to learn more about how you can get involved with ArrayFire.
+
+### Citations and Acknowledgements
+
+If you redistribute ArrayFire, please follow the terms established in
+[the license](LICENSE). If you wish to cite ArrayFire in an academic
+publication, please use the following [citation document](.github/CITATION.md).
ArrayFire development is funded by ArrayFire LLC and several third parties,
-please see the list of [acknowledgements](https://github.com/arrayfire/arrayfire/blob/master/ACKNOWLEDGEMENTS.md) for further details.
+please see the list of [acknowledgements](ACKNOWLEDGEMENTS.md) for further
+details.
+### Support and Contact Info [](https://gitter.im/arrayfire/arrayfire?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
+* [Google Groups](https://groups.google.com/forum/#!forum/arrayfire-users)
+* ArrayFire Services: [Consulting](http://arrayfire.com/consulting/) | [Support](http://arrayfire.com/support/) | [Training](http://arrayfire.com/training/)
diff --git a/assets b/assets
index f16f8bf..8aaab83 160000
--- a/assets
+++ b/assets
@@ -1 +1 @@
-Subproject commit f16f8bf74fe4a255db05884cfff8f5cb0e6e8e09
+Subproject commit 8aaab831f79d7b0894b7e2eb7cdffc3df7510d9d
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/arrayfire.git
More information about the debian-science-commits
mailing list