Please use this identifier to cite or link to this item:
https://rfos.fon.bg.ac.rs/handle/123456789/2641Full metadata record
| DC Field | Value | Language |
|---|---|---|
| dc.creator | Dragan, Đurić | - |
| dc.date.accessioned | 2024-01-10T09:57:21Z | - |
| dc.date.available | 2024-01-10T09:57:21Z | - |
| dc.date.issued | 2023 | |
| dc.identifier.uri | https://rfos.fon.bg.ac.rs/handle/123456789/2641 | - |
| dc.description.abstract | . We present Uncomplicate, a family of functional software libraries written in Clojure that runs on central processing units (CPU) and graphic processing units (GPU). Among others, this includes the following libraries: Deep Diamond, a tensor-based deep neural networks library, Neanderthal, which handles vectors, matrices, and linear algebra, and ClojureCUDA, a functional library for GPU programming. What sets Uncomplicate libraries apart is that they offer relevant constructs at various levels of abstraction, from low-level bindings to the high-level domain-specific code, without compromising neither elegance nor performance. Despite being written in Clojure, a high-level dialect of Lisp, they offer full performance of the state of the art lowest level operations provided by the underlying vendor libraries of low-level operations such as Nvidia’s cuDNN (CUDA Deep Neural Networks) and Intel’s MKL (Math Kernel Library), on CPU as well as GPU. The implementation details of all Uncomplicate libraries are freely accessible online at https://github.com/uncomplicate, including the whole history of development in Git repositories. All libraries are available as free software under Eclipse Public License. Compared to mainstream alternatives, such as Python’s NumPy, TensorFlow, Pytorch, and similar libraries, we achieved comparable and better computation performance (where applicable). The drawback is, of course, that we cannot even approach the popularity and invested resources that the Python ecosystem receives. On the other hand, Uncomplicate libraries cover more functionality (for features that are applicable) with orders of magnitude less code. As an example, Neanderthal, a rough match to NumPy, is only 20,000 lines of code in total compared to NumPy’s 400,000. In addition to that, Neanderthal supports CPU, CUDA GPU, OpenCL GPU, and OpenCL CPU execution, while NumPy’s core implementation only supports running on CPU. Uncomplicate libraries are implemented more effectively, backed by the fact that it has been developed by one developer in free time after work, while mainstream equivalents are developed by multitude of full-time employees. It is a sort of an apples to oranges comparison, we admit, but we are open to reviews and further suggestions. | sr |
| dc.language.iso | sr | sr |
| dc.publisher | Одељење техничких наука САНУ, Београд | sr |
| dc.publisher | Математички институт САНУ, Београд | sr |
| dc.rights | openAccess | sr |
| dc.source | KONFERENCIJA VEŠTAČKA INTELIGENCIJA | sr |
| dc.subject | Clojure, deep learning, programming | sr |
| dc.title | UNCOMPLICATE - SOFTWARE LIBRARIES FOR MACHINE LEARNING AND HIGH PERFORMANCE COMPUTING | sr |
| dc.type | conferenceObject | sr |
| dc.rights.license | ARR | sr |
| dc.citation.spage | 39 | - |
| dc.identifier.doi | https://www.mi.sanu.ac.rs/~ai_conf/AI_conf_Knjiga_apstrakata.pdf | - |
| dc.type.version | publishedVersion | sr |
| item.cerifentitytype | Publications | - |
| item.fulltext | No Fulltext | - |
| item.grantfulltext | none | - |
| item.openairetype | conferenceObject | - |
| item.languageiso639-1 | sr | - |
| item.openairecristype | http://purl.org/coar/resource_type/c_18cf | - |
| Appears in Collections: | Radovi istraživača / Researchers’ publications | |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.