Commit Graph

214 Commits

Author SHA1 Message Date
Roman Grundkiewicz
44757877df
Add initial GitHub workflows (#676)
* Add GitHub workflows

* Workflows with CMake compilation on Windows

* Ubuntu workflow with Boost

* Ignore warnings from Boost

* Compile unit tests on Windows

* Disable cpuinfo tools if compiled with ninja

* Use a separate CMakeSettings.json for CI

* Disable CMake debugs

* Fix unit tests compilation with Ninja Release

* Use FBGEMM in Windows workflow; add comments

* Fix C4706 warning

* Update CHANGELOG

* Run Windows build on pull requests

* Compile SentencePiece statically in Windows workflow

* Add GitHub workflow on MacOS

* Address review comments

* Disable C4702 globally, not only in Debug

* Update CHANGELOG and workflows names

* Update VERSION
2020-07-26 14:43:23 +01:00
Ulrich Germann
b28905a228
Fix bug in finding path to ./git/log/HEAD if Marian is a submodule. (#644)
* Fix bug in finding path to ./git/log/HEAD if Marian is a submodule.
* Build build_info.cpp in build dir, not source dir.
2020-07-21 11:32:08 +01:00
Roman Grundkiewicz
f496a42155 Update CHANGELOG and VERSION 2020-07-17 18:42:26 +01:00
Roman Grundkiewicz
6bf6325058
Updated: fix Windows MSVC builds (using CMake) (#677)
* fix Windows MSVC builds
* dealing with MSVC warnings

Co-authored-by: Rob Berlang <robberlang@tutanota.com>
2020-07-17 11:27:17 +01:00
Marcin Junczys-Dowmunt
7fb5747d6d Update version and changelog 2020-05-21 20:10:33 -07:00
Martin Junczys-Dowmunt
be7b299fe9 Merged PR 12874: Add topk operator and other small changes in preparation of LSH-based short-list replacement
* Add tuple nodes via views and trickery
* Add `topk` operator, currently unused outside unit tests
* Add `abs` operator, currently unused outside unit tests
* Change return type of `Node::allocate()` to `void`. This used to return the number of allocated elements, but isn't really used anywhere. To avoid future confusion of elements and bytes, removed for now.
2020-05-15 04:25:29 +00:00
Marcin Junczys-Dowmunt
d26ce0dfe1 update version 2020-05-14 08:00:41 -07:00
Nikolay Bogoychev
c1facda6a2
Batched gemm (#633)
* Use cblas_sgemm_batch when available
* Merge with master, add comments and describe contribution
2020-05-14 07:55:27 -07:00
Roman Grundkiewicz
f2347a827f
Update Simple-WebSocket-Server and move it to submodules (#639)
* Fix server build with current boost, move simple-websocket-server to submodule
* Change submodule to marian-nmt/Simple-WebSocket-Server
* Update submodule simple-websocket-server

Co-authored-by: Gleb Tv <glebtv@gmail.com>
2020-04-27 10:34:10 +01:00
Kenneth Heafield
3c0c1e133b
python3 shebang from #620 (#621)
* python3 shebang from #620
* Add changelog entry for python3 change
2020-04-16 11:15:42 +01:00
Marcin Junczys-Dowmunt
5e21a28230 update changelog and version 2020-04-13 17:31:06 -07:00
Roman Grundkiewicz
cbb29908f4
Support relative paths in shortlist and sqlite options (#612)
* Refactorize processPaths
* Fix relative paths for shortlist and sqlite options
* Rename InterpolateEnvVars to interpolateEnvVars
* Update CHANGELOG
2020-04-12 18:56:11 +01:00
Marcin Junczys-Dowmunt
d5936084ad
Fix 0 * nan behavior due to using -O3 instead of -OFast (#630)
* fix 0 * nan behavior in concatention
* bump patch
* change epsilon to margin
2020-04-11 09:45:57 -07:00
Roman Grundkiewicz
e6f82f5bd1 Fix TSV training with mini-batch-fit after the last merge 2020-04-11 16:04:20 +01:00
Marcin Junczys-Dowmunt
2248a65b40 resolve merge conflicts 2020-04-10 13:49:20 -07:00
Roman Grundkiewicz
696bb44918
Support tab-separated inputs (#617)
* Add basic support for TSV inputs
* Fix mini-batch-fit for TSV inputs
* Abort if shuffling data from stdin
* Fix terminating training with data from STDIN
* Allow creating vocabs from TSV files
* Add comments; clean creation of vocabs from TSV files
* Guess --tsv-size based on the model type
* Add shortcut for STDIN inputs
* Rename --tsv-size to --tsv-fields
* Allow only one 'stdin' in --train-sets
* Properly create separate vocabularies from a TSV file
* Clearer logging message
* Add error message for wrong number of valid sets if --tsv is used
* Use --no-shuffle instead of --shuffle in the error message
* Fix continuing training from STDIN
* Update CHANGELOG
* Support both 'stdin' and '-'
* Guess --tsv-fields from dim-vocabs if special:model.yml available
* Update error messages
* Move variable outside the loop
* Refactorize utils::splitTsv; add unit tests
* Support '-' as stdin; refactorize; add comments
* Abort if excessive field(s) in the TSV input
* Add a TODO on passing one vocab with fully-tied embeddings
* Remove the unit test with excessive tab-separated fields
2020-04-10 13:01:56 -07:00
Marcin Junczys-Dowmunt
a5a5c62d4a bump version 2020-03-14 09:53:54 -07:00
Marcin Junczys-Dowmunt
adba021a5e bump version 2020-03-12 20:49:31 -07:00
Marcin Junczys-Dowmunt
3c7a88f4e9 update changelog and version 2020-03-10 11:34:07 -07:00
Roman Grundkiewicz
aad22c9d09
Add option for printing CMake cached variables (#583)
* Add option --build-info
2020-03-10 10:29:50 -07:00
Marcin Junczys-Dowmunt
f4ea8239c4 sync with internal branch 2020-03-06 20:54:40 -08:00
Marcin Junczys-Dowmunt
bec7e029b1 bump version 2020-03-06 20:46:11 -08:00
Marcin Junczys-Dowmunt
9f29403627 version and changelog 2020-03-06 20:32:30 -08:00
Roman Grundkiewicz
ad28f99ac0
Add --valid-reset-stalled (#587) 2020-01-29 13:08:45 -08:00
Martin Junczys-Dowmunt
b3a23108b4 Merged PR 11188: Handle empty inputs with batch purging
The previous mechanism to remove empty inputs does not play well with batch purging (removal of finished sentences). Now we reuse the batch purging mechanism to get rid of empty inputs by forcing EOS for all beam entries of a batch entry for the corresponding source batch entry. The purging then takes care of the rest. We set the probability to log(1) = 0.
2020-01-17 21:52:33 +00:00
Marcin Junczys-Dowmunt
1f7a63d3ff bump version 2020-01-11 12:31:34 -08:00
Martin Junczys-Dowmunt
164d26cc36 Merged PR 10999: Splitting up add_all.h into *.h, *.cu and *.inc
Splitting up header file into header and *.cu, comes with the price of having to include specializations for combinations of types as for element.inc and add.inc. No code changes otherwise.

Add CMake options to disable specific compute capabilities.

When run with `make -j16` this compiles in about 6 minutes instead of 7 minutes. Selecting only SM70 during compilation brings down the time to 3 minutes.
2020-01-06 19:14:00 +00:00
Martin Junczys-Dowmunt
88d9980589 Merged PR 10996: A number of smaller changes and clean-up
* Downgrade NCCL to 2.3.7 as 2.4.2 is buggy (hangs with larger models)
* Actually enable gradient-checkpointing, previous option was inactive
* Clean-up training-only options that should not be displayed for decoder and scorer
* Re-enable conversion to FP16 if element types are compatible (belong to the same type class)
* A few typos and more verbose log messages.
2020-01-05 23:16:13 +00:00
Roman Grundkiewicz
24f062cd27 Add option to print word-level scores (#501)
* Add printing word level scores

* Add option --no-spm-decode

* Fix precision for word-level scores

* Fix getting the no-spm-decode option

* Update CHANGELOG

* Add comments and refactor

* Print word-level scores next to other scores in an n-best list

* Remove --word-scores from marian-scorer

* Add --no-spm-decode only if compiled with SentencePiece

* Add comments

* Printing word scores before model scores in n-best lists

* Update VERSION

Co-authored-by: Marcin Junczys-Dowmunt <Marcin.JunczysDowmunt@microsoft.com>
2020-01-03 19:10:21 -08:00
Marcin Junczys-Dowmunt
2bd986d8a7 update version and changelog 2019-12-23 12:10:30 -08:00
Martin Junczys-Dowmunt
e0500b20b8 Merged PR 10827: Sequential unlikelihood training and fixed gather operation
This implements Sequential Unlikelihood Training from https://arxiv.org/abs/1908.04319
* implementation as expensive multi-op, special node in-progress.
* fixed gather operator to work in batched cases
2019-12-13 18:55:36 +00:00
Marcin Junczys-Dowmunt
5be8558c35 ammend changelog and bump version 2019-12-12 19:17:16 -08:00
Roman Grundkiewicz
c343ced9e1 Add lexical shortlists to marian-server (#560)
* Add lexical shortlists to marian-server

* Update CHANGELOG
2019-12-05 19:41:36 -08:00
Marcin Junczys-Dowmunt
6224cb16e2 bump patch 2019-12-05 10:44:57 -08:00
Marcin Junczys-Dowmunt
82da7d5219 do not warn for a number of warnings for cpp files from src/3rd_party/.. 2019-12-03 20:32:50 -08:00
Marcin Junczys-Dowmunt
0197b89b43 bump version 2019-11-26 21:24:22 -08:00
Marcin Junczys-Dowmunt
f07042b9c3 bump version based on PRs 2019-11-25 19:20:03 -08:00
Marcin Junczys-Dowmunt
9e090e3472 bump version 2019-11-25 17:49:34 -08:00
Martin Junczys-Dowmunt
93b7ed80fe Merged PR 10553: Fix multiple problems in reduce kernels that occurred during back-prop
This fixes a number of bugs in our GPU reduce-kernels that would manifest mainly for larger matrices and during back-prop. We also drop support for CUDA 8.0 to be able to take advantage of new GPU primitives introduced by NVidia in CUDA 9.0.
2019-11-26 01:48:07 +00:00
Martin Junczys-Dowmunt
189d89e1dd Merged PR 10333: Batch-pruning in beam search
This PR introduces batch-purging in Marian, i.e. whenever a virtual beam becomes inactive (empty) the entire batch entry that corresponds to that beam can be removed from the encoder and decoder neural states. The CPU-side beam search keeps tracks of the hypotheses as before, but needs to perform mappings between original and shifted batch indices.
2019-11-12 05:13:15 +00:00
Martin Junczys-Dowmunt
9353f065f8 Merged PR 10373: Replace IntrusivePtr with std::uniq_ptr in FastOpt
In FastOpt we do not want to use locking during access, but that makes reference counting not thread-safe. We now use std::unique_ptr to const objects or const references everywhere. This fixes random segfaults with multi-GPU training. @TODO: clean-up option merging to make option generally immutable.
2019-11-11 22:04:19 +00:00
Martin Junczys-Dowmunt
5dfd8a7026 Merged PR 10383: Align items while saving at 256-byte boundary
Align items while saving at 256-byte boundary. Maintains binary-compatibility.
2019-11-11 18:56:12 +00:00
Martin Junczys-Dowmunt
233281cc26 Merged PR 10304: Remove naked pointers, add binary read mode
* Remove naked pointers in file_stream.{h,cpp}
* Add binary read mode
2019-11-05 23:18:45 +00:00
Marcin Junczys-Dowmunt
7ba804b20b bump patch version, update changelog 2019-11-05 11:46:43 -08:00
Marcin Junczys-Dowmunt
1abd12520d bump version once more 2019-11-01 16:37:12 -07:00
Marcin Junczys-Dowmunt
54fba7868e update changelog and version 2019-11-01 16:33:29 -07:00
Marcin Junczys-Dowmunt
398ed0c8d2 update version and changelog 2019-10-27 15:02:18 -07:00
Marcin Junczys-Dowmunt
55e3bcfd74 bump patch and changelog 2019-10-26 15:19:01 -07:00
Marcin Junczys-Dowmunt
68f9d90bfa fix changelog 2019-10-26 09:04:18 -07:00
Marcin Junczys-Dowmunt
e375905404 update changelog and version 2019-10-26 08:53:57 -07:00
Marcin Junczys-Dowmunt
ca37cb067a update version and changelog 2019-09-11 14:28:14 -07:00
Marcin Junczys-Dowmunt
446cff8dcf Merge branch 'master' of vs-ssh.visualstudio.com:v3/machinetranslation/Marian/marian-dev 2019-09-10 14:47:58 -07:00
Marcin Junczys-Dowmunt
86c43565f2 update changelog and version 2019-09-10 07:25:05 -07:00
Marcin Junczys-Dowmunt
a7f7f71086 Adapt changelog and version 2019-09-09 16:39:36 -07:00
Marcin Junczys-Dowmunt
789b502ac9 update changelog 2019-09-07 23:05:37 -07:00
Marcin Junczys-Dowmunt
5db4b9eed4 update version 2019-09-04 13:50:39 -07:00
Roman Grundkiewicz
ac22cf56bc Update CHANGELOG and VERSION 2019-08-14 20:02:22 +01:00
Marcin Junczys-Dowmunt
31ca4ac876 update changelog 2019-02-04 23:14:10 -08:00
Marcin Junczys-Dowmunt
2d70ecd787 update changelog 2019-01-29 10:17:18 -08:00
Marcin Junczys-Dowmunt
960a6b3737 update changelog 2019-01-24 18:55:01 -08:00
Marcin Junczys-Dowmunt
2bc18347fa changelog added information about first BERT attempts 2019-01-24 17:22:44 -08:00
Marcin Junczys-Dowmunt
b6d7c56962 bump version number 2018-12-12 17:30:18 -08:00
Marcin Junczys-Dowmunt
96c9325b2f bump to version 1.7.5 2018-12-07 14:46:48 -08:00
Marcin Junczys-Dowmunt
88324fedc4 bump version, add to changelog 2018-12-07 13:39:27 -08:00
Marcin Junczys-Dowmunt
3efcfdf7f4 adjust version 2018-12-05 21:03:05 -08:00
Marcin Junczys-Dowmunt
1714781e65
Update CHANGELOG.md 2018-12-04 08:56:46 -08:00
Marcin Junczys-Dowmunt
8d31737623 fix all warnings 2018-11-28 19:30:27 -08:00
Marcin Junczys-Dowmunt
2c164a4363 update version log 2018-11-27 11:25:48 -08:00
Marcin Junczys-Dowmunt
87c241224e update changelog 2018-11-10 01:56:27 -08:00
Roman Grundkiewicz
611decafb7 Update CHANGELOG 2018-08-28 14:55:31 +01:00
Roman Grundkiewicz
200045c57a Update CHANGELOG 2018-08-17 13:16:06 +01:00
Roman Grundkiewicz
4a23989752 Update CHANGELOG 2018-08-16 11:08:52 +01:00
Roman Grundkiewicz
b359aa9500 Update CHANGELOG 2018-08-10 10:35:35 +01:00
Marcin Junczys-Dowmunt
e0f5163afd set version to 1.6.0 2018-08-08 16:21:04 -07:00
Roman Grundkiewicz
facd045bf6 Update CHANGELOG 2018-08-08 17:15:17 +01:00
Marcin Junczys-Dowmunt
cb250c09f1 approximate sigmoid 2018-08-07 10:28:43 -07:00
Roman Grundkiewicz
e1d890131c Update CHANGELOG 2018-07-08 20:53:49 +01:00
Marcin Junczys-Dowmunt
f85e63d779 Update changelog 2018-07-01 00:19:28 -07:00
Marcin Junczys-Dowmunt
e7344470d1 ../CHANGELOG.md 2018-06-27 14:09:55 -07:00
Marcin Junczys-Dowmunt
b4a588669d update CHANGELOG.md 2018-06-23 16:09:05 -07:00
Roman Grundkiewicz
8facb11cca Update CHANGELOG 2018-06-19 12:06:40 +00:00
Marcin Junczys-Dowmunt
f5ef175c56 update changelog 2018-03-13 10:02:59 -07:00
Roman Grundkiewicz
a3a787c074 Update CHANGELOG 2018-02-25 13:48:38 +00:00
Marcin Junczys-Dowmunt
b18fab0823 update changelog 2018-02-24 20:44:38 -08:00
Roman Grundkiewicz
4c7df27d6b Update CHANGELOG 2018-02-19 14:55:39 +00:00
Roman Grundkiewicz
6f639d5dd6 Update CHANGELOG 2018-02-14 10:21:35 +00:00
Roman Grundkiewicz
e1739bbb76 Update CHANGELOG 2018-02-10 18:56:37 +00:00
Roman Grundkiewicz
dca77499c6 Update CHANGELOG 2018-02-09 16:03:49 +00:00
Marcin Junczys-Dowmunt
8b00026868 update to version 1.3.1 2018-02-04 18:30:36 -08:00
Marcin Junczys-Dowmunt
13e3d5fc81 update to v1.3.0 2018-01-23 23:10:34 -08:00
Marcin Junczys-Dowmunt
41c12eac73
Update CHANGELOG.md 2018-01-23 15:08:07 -08:00
Marcin Junczys-Dowmunt
b054b4c565 update changelog 2018-01-19 07:58:16 -08:00
Marcin Junczys-Dowmunt
e7e357c716 Updated to v1.2.0 2018-01-13 12:50:46 -08:00
Roman Grundkiewicz
04b8985ac8 Update CHANGELOG 2018-01-13 13:19:09 +00:00
Roman Grundkiewicz
641d6a9059 Update CHANGELOG 2018-01-12 21:19:37 +00:00
Roman Grundkiewicz
2c26cb1a41 Update CHANGELOG 2018-01-10 10:59:53 +00:00
Marcin Junczys-Dowmunt
3deb9015a8 add gradient dropping to changelog 2017-12-06 18:05:09 +01:00
Marcin Junczys-Dowmunt
ad8d3addda update to v1.1.3 2017-12-06 18:03:41 +01:00
Marcin Junczys-Dowmunt
e696962be0 update to v1.1.2 2017-12-05 19:35:19 +01:00
Marcin Junczys-Dowmunt
25000e31ae v1.1.1 2017-11-30 11:06:04 +01:00
Marcin Junczys-Dowmunt
c512b9eb20 option max-length-crop 2017-11-26 01:01:49 +00:00
Roman Grundkiewicz
19b9a9d492 Add missing marian-vocab do CHANGELOG 2017-11-21 11:00:15 +00:00
Marcin Junczys-Dowmunt
e378a764ce update changelog 2017-11-21 09:45:46 +00:00
Marcin Junczys-Dowmunt
48c72831b0 add CUBLAS_TENSOR_OP_MATH for cuda 9.0 2017-11-15 16:01:08 +01:00
Roman Grundkiewicz
50c17e0c70 Update CONTRIBUTING 2017-11-13 12:29:53 +00:00
Marcin Junczys-Dowmunt
73db1b9284
Update CHANGELOG.md 2017-11-05 09:24:46 +01:00
Marcin Junczys-Dowmunt
ab898352ed
Update CHANGELOG.md 2017-11-05 09:21:36 +01:00
Roman Grundkiewicz
d6a644142b update changelog 2017-11-05 08:19:24 +00:00
Marcin Junczys-Dowmunt
a7891fe98a swish 2017-10-22 21:18:30 +02:00
Roman Grundkiewicz
9ce5a45731 Merge with 'master' branch 2017-10-18 09:02:53 +00:00
Marcin Junczys-Dowmunt
92893bb773 update changelog 2017-10-17 15:22:42 +02:00
Roman Grundkiewicz
48e94717eb Update changelog 2017-10-15 14:40:35 +00:00
Marcin Junczys-Dowmunt
2c2bf41a32 typos in changelog 2017-10-14 23:43:48 +02:00
Marcin Junczys-Dowmunt
fe626962ea Changelog 2017-10-14 19:52:56 +02:00