Sebastien Bourdeauducq
590354dbc8
pyon: handle \r
2016-01-27 20:43:42 +01:00
Sebastien Bourdeauducq
b753306f12
Merge branch 'worker_pipeipc'
2016-01-27 19:37:06 +01:00
Sebastien Bourdeauducq
3d9fc7a51f
test/pipe_ipc: re-enable
2016-01-27 19:20:04 +01:00
Sebastien Bourdeauducq
83fd160614
Revert "Revert "test/pipe_ipc: temporarily skip test""
...
This reverts commit 7a9864b260
.
2016-01-27 10:26:53 +01:00
whitequark
0acc86b3b3
transforms.iodelay_estimator: make diagnostics much more clear.
2016-01-27 02:10:15 +00:00
Robert Jördens
ccac8525d2
lda: test tweaks
2016-01-26 15:24:29 -07:00
Sebastien Bourdeauducq
5aa4de8e89
refactor logging and implement in worker
2016-01-26 20:31:42 +01:00
Sebastien Bourdeauducq
6383253e03
protocols/pipe_ipc: autoclose pipe fds on process exit in AsyncioParentComm
2016-01-26 14:55:52 +01:00
Sebastien Bourdeauducq
7a9864b260
Revert "test/pipe_ipc: temporarily skip test"
...
This reverts commit 3a73673e71
.
2016-01-26 09:42:59 +01:00
Robert Jördens
3a73673e71
test/pipe_ipc: temporarily skip test
2016-01-25 19:21:03 -07:00
Robert Jördens
765001054d
artiq.experiment: merge language and coredevice namespaces
...
perl -i -pe 's/^from artiq import \*$/from artiq.experiment import */' your_experiments/*.py
(assuming you skipped the changes form the previous commit)
2016-01-25 17:24:00 -07:00
Robert Jördens
fbe4d96572
artiq: move namespace artiq.* -> artiq.language.*
...
perl -i -pe 's/^from artiq import \*$/from artiq.language import */' your_experiments/*.py
2016-01-25 17:24:00 -07:00
Sebastien Bourdeauducq
dcea6780c6
protocols/pipe_ipc: implement AsyncioChildComm for Unix (affected by python/asyncio#314 )
2016-01-26 00:48:12 +01:00
Sebastien Bourdeauducq
8befc6a8fc
protocols: add pipe_ipc (incomplete)
2016-01-25 22:49:32 +01:00
Sebastien Bourdeauducq
a4dffaac26
test/worker: update
2016-01-24 15:32:37 +01:00
whitequark
3573a8750a
transforms.inferencer: give a suggestion on "raise Exception".
2016-01-20 03:20:25 +00:00
whitequark
1d7858c7bc
Fix formatting.
2016-01-19 18:52:43 +00:00
Robert Jördens
16a1ab4418
test/harness: exec in globals
2016-01-18 16:55:10 -07:00
Robert Jördens
a1201252e2
artiq/test/{not,harness}.py: usual CLI handling
2016-01-18 16:00:46 -07:00
Robert Jördens
d7e4783cae
lit-test: move to artiq/test
2016-01-18 15:28:24 -07:00
Robert Jördens
c0bcff4035
test/*/: add missing __init__.py
2016-01-18 14:22:40 -07:00
whitequark
225f7d7302
Commit missing parts of 9366a29
.
2016-01-10 20:01:26 +00:00
whitequark
027d54ca94
Enlarge coredevice buffers to 2.5MiB ( fixes #215 ).
...
This should be enough for sending a 2MiB int32 list.
2016-01-07 18:29:35 +00:00
whitequark
cb90bf6ef3
test/coredevice/portability: keep trace list entirely on host.
2015-12-31 22:08:15 +08:00
whitequark
abc5a49aaf
test: use raise X() syntax rather than raise X.
2015-12-31 22:02:57 +08:00
Sebastien Bourdeauducq
17802d3cff
test/coredevice/primes: keep output list entirely on the host
2015-12-31 09:49:37 +08:00
Sebastien Bourdeauducq
aa29defd02
test/coredevice/test_pulses: fix first_timestamp
2015-12-29 12:43:53 +08:00
whitequark
9d7d614139
test.coredevice.rtio.CoredeviceTest.test_time_keeps_running: relax timing.
...
Testing ARTIQ over an SSH channel to Hong Kong is slow.
2015-12-29 02:57:33 +08:00
whitequark
0dd71946b9
test.coredevice.portability.HostVsDeviceCase.test_exceptions: update.
...
TypeError would never be raised with the new compiler.
It crashes in a different way now.
2015-12-29 02:18:38 +08:00
whitequark
db05ec0277
test.coredevice.portability.HostVsDeviceCase.test_misc: update.
...
It crashes in a different way now.
2015-12-29 02:15:57 +08:00
Sebastien Bourdeauducq
7eb4067477
test/coredevice/analyzer: test TTL input mode
2015-12-26 21:10:19 +08:00
Sebastien Bourdeauducq
7475b3813e
test/coredevice: PEP8
2015-12-24 19:26:42 +08:00
Sebastien Bourdeauducq
bf1a3a5b8f
test/coredevice: add analyzer unittest
2015-12-24 19:25:29 +08:00
Sebastien Bourdeauducq
b4b0dcc5d1
test/coredevice/rtio: remove obsolete functions
2015-12-22 12:11:13 +08:00
Sebastien Bourdeauducq
23355d8eff
coredevice: restore RTIOCollisionError
2015-12-22 11:59:18 +08:00
whitequark
4fb1de33c9
Initial invocation of a @kernel function can now return a value ( fixes #197 ).
2015-12-19 05:26:18 +08:00
whitequark
52102a1a79
Fix handling of default values for RPC arguments ( fixes #190 ).
2015-12-18 18:03:07 +08:00
Sebastien Bourdeauducq
5e38cad64c
test/coredevice: partial update to new APIs
2015-12-16 19:45:57 +08:00
Sebastien Bourdeauducq
3edf52232c
protocols/pc_rpc: support coroutine methods
2015-12-06 12:52:41 +08:00
whitequark
9670939ca6
compiler.analyses.domination: fix PostDominatorTree.
2015-11-09 12:49:27 +03:00
whitequark
19fae9181c
compiler.analyses.domination: implement new dominator tree algorithm.
2015-11-09 11:51:54 +03:00
whitequark
f70f7fb89b
Merge branch 'master' into new-py2llvm
2015-10-30 04:29:35 +03:00
Sebastien Bourdeauducq
40b4129c65
Only support scalars and numpy arrays in HDF5 output. Update documentation. Closes #145
2015-10-28 18:33:42 +08:00
Sebastien Bourdeauducq
9f2ff32948
test/sync_struct: nparray mutation
2015-10-26 23:41:05 +08:00
Sebastien Bourdeauducq
fcd29492f9
worker_db: support more types in HDF5 output. Closes #144 . Closes #121
2015-10-24 10:54:59 +08:00
Sebastien Bourdeauducq
d13b368a65
build logging into worker
2015-10-20 18:11:50 +08:00
Sebastien Bourdeauducq
da70f8b88c
test/pc_rpc: test AutoTarget
2015-10-19 20:20:53 +08:00
whitequark
bd5b324fc2
Merge branch 'master' into new-py2llvm
2015-10-13 19:24:45 +03:00
Sebastien Bourdeauducq
1d14975bd5
worker: cleaner termination on exception in user code, improve unittest
2015-10-13 01:11:57 +08:00
Sebastien Bourdeauducq
a754d4b5f5
test: use new dataset API
2015-10-12 19:20:04 +08:00
Sebastien Bourdeauducq
a83ffb3dce
protocols: move FlatFileDB into pyon
2015-10-12 18:19:28 +08:00
Sebastien Bourdeauducq
139072d402
Graceful experiment termination. Closes #76
2015-10-06 13:50:00 +08:00
Sebastien Bourdeauducq
d94f0211a6
test/scheduler: cleanup
2015-10-06 13:35:30 +08:00
Sebastien Bourdeauducq
50a5a3baf0
environment: attr_* -> setattr_*
2015-10-04 00:18:21 +08:00
Sebastien Bourdeauducq
090a7e5871
test/sync_struct: cleanup
2015-10-03 19:40:11 +08:00
Sebastien Bourdeauducq
f552d62b69
use Python 3.5 coroutines
2015-10-03 19:28:57 +08:00
Sebastien Bourdeauducq
b117b9320d
asyncio.async -> asyncio.ensure_future
2015-10-03 14:37:02 +08:00
whitequark
3e1348a084
Merge branch 'master' of github.com:m-labs/artiq into new-py2llvm
2015-09-27 18:22:28 +03:00
Robert Jördens
01416bb0be
copyright: claim contributions
...
These are contributions of >= 30% or >= 20 lines (half-automated).
I hereby resubmit all my previous contributions to the ARTIQ project
under the following terms:
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/ >.
Closes #130
Signed-off-by: Robert Jordens <jordens@gmail.com>
2015-09-06 16:08:57 -06:00
whitequark
3af54f5ffc
test.coredevice.rtio: simplify.
2015-09-01 08:38:53 -06:00
whitequark
995245b786
compiler.embedding: default RPC return annotation is -> TNone.
2015-09-01 08:38:38 -06:00
whitequark
c9d8fd837e
test.coredevice.rtio: update for new compiler.
2015-08-31 23:34:28 -06:00
whitequark
2df8b946f9
Factor out the code to pretty-print diagnostics.
2015-08-31 22:52:39 -06:00
whitequark
cbd903a9dc
compiler.embedding: add tests for quote serialization.
2015-08-28 05:24:57 -05:00
whitequark
72823cf521
test.{coredevice,coredevice_vs_host} → test.coredevice.{rtio,portability}.
2015-08-28 03:53:43 -05:00
Yann Sionneau
4a16ea111c
worker, scheduler: fix unit tests on Windows
2015-08-27 18:23:26 +02:00
Yann Sionneau
977df7013d
py2llvm: skip test_is_prime unit test on Windows
...
see http://irclog.whitequark.org/m-labs/2015-08-26#13821771 ;
2015-08-26 14:50:52 +02:00
Yann Sionneau
92390cfbe6
py2llvm: allow the unit test to run on Windows
2015-08-26 11:12:48 +02:00
Sebastien Bourdeauducq
278adf193d
test/pc_rpc: use builtin_terminate
2015-08-17 23:17:13 +08:00
whitequark
fd3c8a2830
language.core: remove {int,round}64, implement int with device semantics.
2015-08-11 12:57:17 +03:00
whitequark
200330a808
Remove parts of py2llvm that are implemented in the new compiler.
2015-08-10 20:36:39 +03:00
Sebastien Bourdeauducq
06badd1dc1
scheduler: refactor, fix pipeline hazards
2015-08-10 21:58:11 +08:00
Sebastien Bourdeauducq
52de6311a4
test/scheduler: add repo_msg
2015-08-10 20:07:24 +08:00
Sebastien Bourdeauducq
7ed8fe57fa
Git support
2015-08-07 15:51:56 +08:00
whitequark
4a8e397a77
Fold llvmlite patches into m-labs/llvmlite repository.
2015-08-05 03:49:01 +03:00
Sebastien Bourdeauducq
1d34c06d79
rtio: detect collision errors
2015-07-29 19:43:35 +08:00
Sebastien Bourdeauducq
b548d50a2f
test/coredevice: use ttl_out for PulseRate (loop is less available)
2015-07-29 19:42:43 +08:00
whitequark
fd46d8b11e
Merge branch 'master' into new-py2llvm
2015-07-29 12:52:19 +03:00
Robert Jördens
2640a57af3
test/coredevice: let output() settle longer
2015-07-28 16:20:05 -06:00
whitequark
7903889082
Merge branch 'master' into new-py2llvm
2015-07-27 03:29:00 +03:00
Sebastien Bourdeauducq
05dd11a60d
protocols/pyon: support numpy scalars ( closes #53 )
2015-07-25 12:28:56 +08:00
Sebastien Bourdeauducq
8bc1dd9f9c
test/serialization: remove redundant test since Quantity was removed
2015-07-25 12:23:43 +08:00
whitequark
c581af29d7
Merge remote-tracking branch 'origin/master' into new-py2llvm
2015-07-23 21:36:17 +03:00
Sebastien Bourdeauducq
84de2fb28b
expid: experiment -> class_name
2015-07-15 11:08:12 +02:00
Sebastien Bourdeauducq
255aba9247
test/worker: remove stale handler
2015-07-15 11:07:48 +02:00
Yann Sionneau
90ba9f7bbf
llvmlite: rename our package to be llvmlite_or1k to avoid collision with llvmlite package needed for numba
2015-07-14 01:01:56 +02:00
Sebastien Bourdeauducq
56fc7a484c
TTLInOut: timestamp -> timestamp_mu
2015-07-13 23:21:29 +02:00
Sebastien Bourdeauducq
820ff2da2c
test/coredevice: WA for lack of constant string support in compiler (see issue #68 )
2015-07-13 22:22:26 +02:00
Sebastien Bourdeauducq
32d141f5ac
refactor ddb/pdb/rdb
2015-07-13 22:21:32 +02:00
Sebastien Bourdeauducq
8b02b58a77
sync_struct/Notifier: do not pass root param to publish
2015-07-13 17:12:59 +02:00
Robert Jördens
80eea4ce6c
test: relax test_time_keeps_running
...
on pipistrello this takes about 200-250ms
2015-07-09 16:30:37 -06:00
Sebastien Bourdeauducq
96a5d73c81
worker: split build stage from prepare
2015-07-09 13:18:12 +02:00
Sebastien Bourdeauducq
f3e5197c14
test/coredevice/test_time_keeps_running: remove unnecessary close_devices, upper bound
2015-07-07 15:48:47 +02:00
Sebastien Bourdeauducq
8a33d8c868
never stop RTIO counter
2015-07-07 15:29:38 +02:00
Robert Jördens
a3fe538067
test: fix get_from_ddb
2015-07-04 22:36:23 -06:00
Robert Jördens
409c66e966
test: convert lda/tcube/409b to hardware_testbench
2015-07-04 21:44:28 -06:00
Robert Jördens
6faa8ecd51
test: split full_stack into coredevice and coredevice_vs_host
...
also adapt it to hardware_testbench
closes : #62
2015-07-04 20:35:02 -06:00
Robert Jördens
4cbf280f1a
test: return experiment not, rdb
2015-07-04 20:05:11 -06:00
Sebastien Bourdeauducq
753d61b38f
complete support for TTL clock generator
2015-07-04 18:36:01 +02:00
Sebastien Bourdeauducq
a615a3830a
test/coredevice: minor fixes
2015-07-04 18:35:11 +02:00
Sebastien Bourdeauducq
74f07092c7
test/coredevice: fix timestamp conflict
2015-07-02 10:26:00 +02:00
Sebastien Bourdeauducq
771ad6cb26
test/coredevice: adapt to MU API
2015-07-01 22:34:49 +02:00
Sebastien Bourdeauducq
5ace0f8e7a
Merge branch 'master' of https://github.com/m-labs/artiq
2015-07-01 22:23:10 +02:00
Sebastien Bourdeauducq
9d6287a6a3
expose machine units to user
2015-07-01 22:22:53 +02:00
Robert Jördens
f7427dda39
test: make benchmarks unittest
2015-06-28 20:56:12 -06:00
Robert Jördens
593dafc118
test: hardware testbench
2015-06-28 20:55:59 -06:00
Sebastien Bourdeauducq
85c5b157a0
test/full_stack: tolerate FP rounding errors
2015-06-27 23:52:20 +02:00
Sebastien Bourdeauducq
c71fe29792
simplify unit system and use floats by default
2015-06-26 16:34:37 +02:00
Robert Jördens
07a58dc0da
wavesynth: cleanup, refactor
2015-06-20 23:29:26 -06:00
Joe Britton
83fd5fdf16
novatech409b: add unit test
2015-06-19 15:59:23 -06:00
Sebastien Bourdeauducq
76e034c913
protocols: add fire-and-forget RPC
2015-06-14 22:03:34 -06:00
Yann Sionneau
92999d0cc0
sync_struct: test append, insert, delitem and pop actions
2015-06-10 00:52:46 +02:00
Sebastien Bourdeauducq
26e737f61f
style
2015-06-06 00:55:36 +08:00
Sebastien Bourdeauducq
37c7ea31c3
gui: TTL override support
2015-06-06 00:03:30 +08:00
Yann Sionneau
50a6da994e
worker test: do not close the event loop twice
2015-06-04 13:44:07 +02:00
Yann Sionneau
60bdf74137
tests: use try/finally to close event loop + wait for process to die after killing it
2015-06-04 13:40:13 +02:00
Sebastien Bourdeauducq
d73006652b
test/worker: always close even if prepare() raises
2015-06-04 11:22:03 +08:00
Sebastien Bourdeauducq
82a2beaa32
style fixes
2015-06-04 10:42:37 +08:00
Yann Sionneau
b27254ba80
sync_struct test: test more cases, pep8 fix, remove print
2015-06-03 15:54:50 +02:00
Yann Sionneau
b8bdce5bd1
sync_struct test: don't poll, use Event instead
2015-06-03 15:40:58 +02:00
Yann Sionneau
21d88d8345
tests: use a different event loop for each test
2015-06-03 15:23:34 +02:00
Yann Sionneau
e5f16b29fd
sync_struct: fix test case name
2015-06-03 10:46:09 +02:00
Yann Sionneau
c7953da7e1
test: add unittest for sync_struct
2015-06-03 10:43:01 +02:00
Sebastien Bourdeauducq
048782e26c
test/scheduler: test flush
2015-05-29 20:16:47 +08:00
Sebastien Bourdeauducq
6ff2e1a083
test/scheduler: verify that a high priority timed experiment in the future is not run
2015-05-29 19:43:39 +08:00
Sebastien Bourdeauducq
737f6d4485
scheduler: support pipeline flush
2015-05-28 17:20:58 +08:00
whitequark
c75fd6bc88
Replace builtin ast with pythonparser.ast.
2015-05-27 17:04:18 +03:00
Sebastien Bourdeauducq
0b05b54a87
test: add scheduler unittest
2015-05-27 19:25:50 +08:00
Sebastien Bourdeauducq
f30d671359
test/worker: adapt to priority API
2015-05-24 23:38:05 +08:00
Sebastien Bourdeauducq
785623be26
test/worker: adapt to new scheduler API
2015-05-21 16:41:45 +08:00
Sebastien Bourdeauducq
a62ae1d8d7
test/transforms: adapt to 'now' save on core device
2015-05-12 23:06:33 +08:00
Sebastien Bourdeauducq
65b4b7bb12
coredevice: rename rtio to ttl, integrated in+out driver, loopback on the same pin in tests
2015-05-02 10:35:21 +08:00
Sebastien Bourdeauducq
1684586ae8
test: add unittest for core device watchdog
2015-05-01 14:02:31 +08:00
Sebastien Bourdeauducq
283695e8aa
language/core: integrate watchdogs
2015-04-28 23:23:59 +08:00
Sebastien Bourdeauducq
dc14728264
test/full_stack: use Ethernet
2015-04-28 01:33:37 +08:00
Sebastien Bourdeauducq
e27844e0f7
test/pxi6733: remove useless checks
2015-04-21 16:10:46 +08:00
Yann Sionneau
69388ccc1a
pxi6733: add driver and controller
2015-04-21 16:09:55 +08:00
Sebastien Bourdeauducq
c98e08fe36
fix transforms unittest
2015-04-19 11:40:49 +08:00
Robert Jördens
60baed68b4
wavesynth: get coefficients.py into useable state
...
SplineSource() supports spline interpolating multi-channel tabular data,
cropping it and generating wavesynth compatible segment data from it.
ComposingSplineSource() needs some verification still.
2015-04-18 01:23:15 -06:00
Robert Jördens
6a0e97f161
pdq2: refactor program_frame(), cleanup test, stall correctly
...
Once the Sequencer ack's a line, the Parser starts preparing the
next one. This includes jumping through the frame table if necessary.
To stall the Parser while the Sequencer executes the last line of a
frame and to ensure that the frame select lines can be set up and their
sampling is synchronized to a trigger, we add a triggered stall line
at the end of the frame.
When that line is triggered the Parser jumps through the table and starts
parsing the first line of the next frame. We let the duration of this
last stall line be 10 cycles (200ns@50MHz) to be able to distinguish this
sampling of the frame select lines from the triggering of the first line
in the next frame.
frame f
parser n f 0
stb __---________---___
trigger ___----_______----_
ack ____-__________-___
sequencer n-1 n 0
2015-04-14 18:18:16 -06:00
Robert Jördens
bc1acef355
test/pdq2: don't write vcd
2015-04-14 18:18:16 -06:00
Robert Jördens
75dfa95b4d
wavesynth: move test code to unittests, fix mutability style
2015-04-05 04:24:44 -06:00
Robert Jördens
1d5f467da7
pdq2: implement changes in trigger/jump semantics, add unittest
...
The unittests now runs the compute_samples.Synthesizer against the actual
gateware and verifies similarity (up to integer rounding errors).
2015-04-05 03:55:54 -06:00
Robert Jördens
e870b27830
wavesynth: new semantics, fix compensation
...
* "trigger" now means that the corresponding line will only start
once the trigger line is high.
* "jump" is implicit as the last line in a frame must jump back.
* spline coefficients are now compensated for finite time step size
2015-04-05 03:55:54 -06:00
Robert Jördens
051b01f58e
wavesynth: refactor testing code
2015-04-05 03:55:54 -06:00
Robert Jördens
d1653589f9
pdq2: spelling fix
2015-04-04 14:26:32 -06:00
Robert Jördens
16ff190731
pdq2: cleanup unittest
2015-04-04 14:26:32 -06:00
Robert Jördens
fb91955260
tests: make hardware-in-the loop flags positive logic
...
Explicitly having to disable unittests that require hardware
(ARTIQ_NO_HARDWARE) is cumbersome.
There is not even a sensible default for the
device or serial number of the devices requiring additional
variables (ARTIQ_LDA_DEVICE etc).
This patch reverts the logic by skipping unittests that
can not automatically determine whether the required hardware
is present and where it is.
2015-04-03 11:51:03 +08:00
Robert Jördens
05781699b8
pdq2: driver and unittest
...
* parses wavesynth style programs
* verified with cosimulated gateware
2015-03-21 00:29:00 -06:00
Sebastien Bourdeauducq
f158711f7e
test/worker: test watchdog in build()
2015-03-11 19:07:04 +01:00