Fast Neural Machine Translation in C++
Go to file
Nikolay Bogoychev 600f5cbdec
Integrate intgemm into marian (#595)
Adds intgemm as a module for Marian. Intgemm is @kpu 's 8/16 bit gemm library with support for architectures from SSE2 to AVX512VNNI
Removes outdated integer code, related to the --optimize option

Co-authored-by: Kenneth Heafield <github@kheafield.com>
Co-authored-by: Kenneth Heafield <kpu@users.noreply.github.com>
Co-authored-by: Ulrich Germann <ugermann@inf.ed.ac.uk>
Co-authored-by: Marcin Junczys-Dowmunt <marcinjd@microsoft.com>
Co-authored-by: Roman Grundkiewicz <rgrundkiewicz@gmail.com>
2021-01-24 16:02:30 -08:00
.github Remove ::set-env from GitHub checks for Windows (#766) 2020-11-19 20:12:28 +00:00
cmake Merged PR 14402: Sync with public marian-dev master 1.9.31 2020-07-28 22:19:40 +00:00
contrib Add Triton Marian backend running in AzureML Inference Environment (#749) 2020-11-04 14:29:36 -08:00
doc Added more references 2016-10-06 10:25:53 -05:00
examples@c19b7814d7 Merged PR 11103: Clear cache for RNN object between batches 2020-01-11 20:29:43 +00:00
regression-tests@97b2f95aba Integrate intgemm into marian (#595) 2021-01-24 16:02:30 -08:00
scripts Remove ::set-env from GitHub checks for Windows (#766) 2020-11-19 20:12:28 +00:00
src Integrate intgemm into marian (#595) 2021-01-24 16:02:30 -08:00
vs Merged PR 14437: minor fixes to make VS happy after latest changes 2020-07-29 18:00:59 +00:00
.clang-format Update clang-format 2018-10-19 13:40:42 +01:00
.gitattributes revisited fillBatches() and optimized it a little; 2018-10-08 13:29:16 -07:00
.gitignore Add option for printing CMake cached variables (#583) 2020-03-10 10:29:50 -07:00
.gitmodules Integrate intgemm into marian (#595) 2021-01-24 16:02:30 -08:00
azure-pipelines.yml Clean up Ubuntu builds 2020-09-14 14:36:04 +01:00
CHANGELOG.md Integrate intgemm into marian (#595) 2021-01-24 16:02:30 -08:00
CMakeLists.txt Integrate intgemm into marian (#595) 2021-01-24 16:02:30 -08:00
CMakeSettings.json Merged PR 14262: Update MSVC CMake build and instructions 2020-07-25 20:57:17 +00:00
CONTRIBUTING.md Add templates for GitHub issues and pull requests 2020-03-16 20:10:18 -07:00
Doxyfile.in Fix latex generation in doxygen. 2019-02-16 22:48:10 +00:00
LICENSE.md Update LICENSE.md 2017-02-27 01:16:42 +00:00
README.md Update README.md 2019-11-27 19:27:49 -08:00
VERSION Bump version 2021-01-07 10:42:24 +00:00

Marian

Build Status CUDA 9 Build Status CUDA 10 Build Status CPU Tests Status Latest release License: MIT Twitter

Marian is an efficient Neural Machine Translation framework written in pure C++ with minimal dependencies.

Named in honour of Marian Rejewski, a Polish mathematician and cryptologist.

Main features:

  • Efficient pure C++ implementation
  • Fast multi-GPU training and GPU/CPU translation
  • State-of-the-art NMT architectures: deep RNN and transformer
  • Permissive open source license (MIT)
  • more detail...

If you use this, please cite:

Marcin Junczys-Dowmunt, Roman Grundkiewicz, Tomasz Dwojak, Hieu Hoang, Kenneth Heafield, Tom Neckermann, Frank Seide, Ulrich Germann, Alham Fikri Aji, Nikolay Bogoychev, André F. T. Martins, Alexandra Birch (2018). Marian: Fast Neural Machine Translation in C++ (http://www.aclweb.org/anthology/P18-4020)

@InProceedings{mariannmt,
    title     = {Marian: Fast Neural Machine Translation in {C++}},
    author    = {Junczys-Dowmunt, Marcin and Grundkiewicz, Roman and
                 Dwojak, Tomasz and Hoang, Hieu and Heafield, Kenneth and
                 Neckermann, Tom and Seide, Frank and Germann, Ulrich and
                 Fikri Aji, Alham and Bogoychev, Nikolay and
                 Martins, Andr\'{e} F. T. and Birch, Alexandra},
    booktitle = {Proceedings of ACL 2018, System Demonstrations},
    pages     = {116--121},
    publisher = {Association for Computational Linguistics},
    year      = {2018},
    month     = {July},
    address   = {Melbourne, Australia},
    url       = {http://www.aclweb.org/anthology/P18-4020}
}

Amun

The handwritten decoder for RNN models compatible with Marian and Nematus has been superseded by the Marian decoder. The code is available in a separate repository: https://github.com/marian-nmt/amun

Website

More information on https://marian-nmt.github.io

Acknowledgements

The development of Marian received funding from the European Union's Horizon 2020 Research and Innovation Programme under grant agreements 688139 (SUMMA; 2016-2019), 645487 (Modern MT; 2015-2017), 644333 (TraMOOC; 2015-2017), 644402 (HiML; 2015-2017), 825303 (Bergamot; 2019-2021), the Amazon Academic Research Awards program, the World Intellectual Property Organization, and is based upon work supported in part by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA), via contract #FA8650-17-C-9117.

This software contains source code provided by NVIDIA Corporation.