7fa9a4efc3
drtio: aux controller unittest WIP
2016-11-15 12:02:53 +08:00
b9ce2bb1f0
Merge branch 'phaser' into phaser2
...
* phaser: (127 commits)
phaser: use misoc cordic
phaser: fix DDS dummy cfg
runtime: disable the Nagle algorithm entirely.
runtime: buffer RPC send packets.
runtime: don't print debug messages to the UART.
runtime: print microsecond timestamps in debug messages.
artiq_devtool: abort if build failed.
conda: bump llvmlite-artiq dep.
conda: bump llvmlite-artiq dep.
llvm_ir_generator: use !{→unconditionally.}invariant.load metadata.
artiq_devtool: more robust port forwarding.
setup: remove paramiko dependency (optional and developer-only)
artiq_devtool: implement.
artiq_compile: actually disable attribute writeback.
conda: use pythonparser 1.0.
conda: tighten pythonparser dependency (fixes #600 ).
doc: clarify kernel_invariant doc (fixes #609 ).
compiler: Emit all-kernel_invariant objects as LLVM constants
conda: update for LLVM 3.9.
add has_dds, use config flags
...
2016-11-13 17:30:37 +01:00
aedb6747f2
Merge branch 'master' into phaser
...
* master: (47 commits)
runtime: disable the Nagle algorithm entirely.
runtime: buffer RPC send packets.
runtime: don't print debug messages to the UART.
runtime: print microsecond timestamps in debug messages.
artiq_devtool: abort if build failed.
conda: bump llvmlite-artiq dep.
conda: bump llvmlite-artiq dep.
llvm_ir_generator: use !{→unconditionally.}invariant.load metadata.
artiq_devtool: more robust port forwarding.
setup: remove paramiko dependency (optional and developer-only)
artiq_devtool: implement.
artiq_compile: actually disable attribute writeback.
conda: use pythonparser 1.0.
conda: tighten pythonparser dependency (fixes #600 ).
doc: clarify kernel_invariant doc (fixes #609 ).
compiler: Emit all-kernel_invariant objects as LLVM constants
conda: update for LLVM 3.9.
add has_dds, use config flags
Revert "Revert "Revert "Revert "Update for LLVM 3.9.""""
Revert "Revert "Revert "Update for LLVM 3.9."""
...
2016-11-13 16:54:28 +01:00
whitequark
feed91d8b2
runtime: buffer RPC send packets.
...
This brings mean RPC time from ~45ms to ~2ms.
The cause of the slowness without buffering is, primarily, that lwip
is severely pessimized by small writes, whether with Nagle on or off.
(In fact, disabling Nagle makes it function *better* on many small
writes, which begs the question of what's the point of having Nagle
there in the first place.) In practical terms, the slowness appears
only when writing a 4-byte buffer (the synchronization segment);
writing buffers of other sizes does not trigger the problem.
This all is extremely confusing and the fix is partly palliative,
but since it seems to work reliably and we're migrating off lwip
I think it is unwise to spend any more time debugging this.
2016-11-12 23:06:33 +00:00
David Nadlinger
bfbdba9205
compiler: Emit all-kernel_invariant objects as LLVM constants
...
This enables constant propagation optimisations, as verified by
the included test case. This is only a first stop-gap measure, though;
we should support optimisation based on kernel invariants on a more
fine-grained level.
2016-11-09 14:50:48 +00:00
863934c4fa
drtio: more reliable link layer init
2016-11-09 22:03:47 +08:00
c4cd269afc
Merge branch 'master' into drtio
2016-11-06 00:13:32 +08:00
David Nadlinger
7dcc987dd7
compiler: Fix break/continue targets in loop else blocks
...
Previously, they would still target the respective labels in the
just-exited loop.
Signed-off-by: David Nadlinger <code@klickverbot.at>
2016-11-05 02:35:01 +00:00
5019b03f10
drtio: add echo and packet count test
2016-11-04 22:24:35 +08:00
df7294792c
drtio: break some RT features into manager, add echo request CSR
2016-11-04 19:38:24 +08:00
747da3da15
drtio: differentiate local and remote unknown packet type errors
2016-11-04 15:17:19 +08:00
a4ba34bb2c
drtio: cleanup test_full_stack
2016-11-03 20:13:31 +08:00
whitequark
6fcd57a41a
runtime: fix remaining async RPC bugs.
2016-11-01 10:33:57 +00:00
07ad00c1ca
drtio: split kernel/system CSRs
2016-10-31 18:09:36 +08:00
whitequark
cd68577dbc
compiler: add support for async RPCs.
2016-10-30 00:57:31 +00:00
95def81c03
drtio: squelch frame signals until link layer ready
2016-10-29 17:05:30 +08:00
6d07a16c62
Merge branch 'master' into phaser
...
* master: (72 commits)
gateware: extend mailbox to 3 entries.
master/worker_db: set default value for archive
master: keep dataset manager consistent when set_dataset is called with contradictory attributes
master: archive input datasets. Closes #587
master: ensure same dataset is in broadcast and local when mutating
scheduler: default submission arguments, closes #577
pdq2: sync with pdq2
doc: clarify usage of pause/check_pause, closes #571
dashboard/datasets: use scientific spinbox and increase number of decimals, closes #572
gateware/spi: fix import
runtime: fix use of $(realpath) in Makefile.
test: fix printf specifier.
llvm_ir_generator: make sure RPC allocations are not underaligned.
runtime: use i64 for watchdog timeout, not i32.
runtime: port ksupport to Rust.
runtime: remove some redundant libm functions copied inline.
language: Add "A" (ampere) as well-known unit for arguments
conda: misoc 0.4 (csr)
runtime: cap log level at debug.
runtime: discard unnecessary sections.
...
2016-10-28 01:40:11 +02:00
9bbc6eb0ef
drtio: more full stack testing
2016-10-26 22:04:32 +08:00
7f8e53aa5c
drtio: more fixes and tests
2016-10-26 11:48:47 +08:00
22173b8c70
drtio: full stack unittest
2016-10-26 00:35:22 +08:00
ad042de954
drtio: fixes, basic TTL working in simulation
2016-10-25 12:41:16 +08:00
d2f776b0d0
phaser: add more tools
2016-10-24 17:39:14 +02:00
94e68dbae4
drtio: test_full_stack (WIP)
2016-10-24 23:36:33 +08:00
1e313afe64
drtio: CrossDomainNotification
2016-10-21 22:45:45 +08:00
c71c4c89e0
drtio: change data direction in _CrossDomainRequest
2016-10-21 22:44:47 +08:00
6a88229e6a
drtio: CrossDomainRequest
2016-10-20 23:37:59 +08:00
whitequark
f10a4498c7
test: fix printf specifier.
2016-10-16 23:54:29 +00:00
whitequark
7618907cad
runtime: use i64 for watchdog timeout, not i32.
2016-10-16 16:32:43 +00:00
a40b39e9a2
drtio: structure
2016-10-10 23:12:12 +08:00
23b3302200
drtio: implement TSC load in satellite
2016-10-07 19:30:53 +08:00
43caffc168
drtio: self-checking echo test
2016-10-07 17:31:51 +08:00
0574e882d2
drtio: basic RT packet echo test
2016-10-07 15:36:32 +08:00
whitequark
edafb08b43
test: fix d6193365
.
2016-10-06 16:27:12 +00:00
whitequark
d619336503
test: update libartiq_support for changed personality ABI.
2016-10-06 15:44:55 +00:00
whitequark
6b2789e3db
test: add more RPC tests.
2016-10-06 12:54:08 +00:00
4a0eaf0f95
phaser: add jesd204b rtio dds
...
gateware: add jesd204b awg
gateware: copy phaser (df3825a)
dsp/tools: update satadd mixin
phaser: no DDS stubs
dsp: accu fix
phaser: cleanup/reduce
sawg: kernel support and docs
sawg: coredevice api fixes
sawg: example ddb/experiment
phaser: add conda package
examples/phaser: typo
sawg: adapt tests, fix accu stb
sawg: tweak dds parameters
sawg: move/adapt/extend tests
sawg: test phy, refactor
phaser: non-rtio spi
phaser: target cli update
phaser: ad9154-fmc-ebz pins
phaser: reorganize fmc signal naming
phaser: add test mode stubs
phaser: txen is LVTTL
phaser: clk spi xfer test
phaser: spi for ad9154 and ad9516
phaser: spi tweaks
ad9154: add register map from ad9144.xml
ad9516: add register map from ad9517.xml and manual adaptation
ad9154_reg: just generate getter/setter macros as well
ad9154: reg WIP
ad9154: check and fix registers
kc705: single ended rtio_external_clk
use single ended user_sma_clk_n instead of p/n to free up one clock sma
kc705: mirror clk200 at user_sma_clock_p
ad9516_regs.h: fix B_COUNTER_MSB
phase: wire up clocking differently
needs patched misoc
kc705: feed rtio_external_clock directly
kc705: remove rtio_external_clk for phaser
phaser: spi tweaks
ad9516: some startup
ad9516_reg fixes
phaser: setup ad9516 for supposed 500 MHz operation
ad9516: use full duplex spi
ad9154_reg: add CONFIG_REG_2
ad9154_reg: fixes
phaser: write some ad9154 config
ad9154_reg: fixes
ad9154: more init, and human readable setup
ad9154/ad9516: merge spi support
ad9154: status readout
Revert "kc705: remove rtio_external_clk for phaser"
This reverts commit d500288bb44f2bf2eeb0c2f237aa207b0a8b1366.
Revert "kc705: feed rtio_external_clock directly"
This reverts commit 8dc7825519e3e75b7d3d29c9abf10fc6e3a8b4c5.
Revert "phase: wire up clocking differently"
This reverts commit ad9cc450ffa35abb54b0842d56f6cf6c53c6fbcc.
Revert "kc705: mirror clk200 at user_sma_clock_p"
This reverts commit 7f0dffdcdd28e648af84725682f82ec6e5642eba.
Revert "kc705: single ended rtio_external_clk"
This reverts commit a9426d983fbf5c1cb768da8f1da26d9b7335e9cf.
ad9516: 2000 MHz clock
phaser: test clock dist
phaser: test freqs
ad9154: iostandards
phaser: drop clock monitor
phaser: no separate i2c
phaser: drive rtio from refclk, wire up sysref
phaser: ttl channel for sync
ad9154: 4x interp, status, tweaks
phaser: sync/sysref 33V banks
phaser: sync/sysref LVDS_25 inputs are VCCO tolerant
phaser: user input-only ttls
phaser: rtio fully from refclk
ad9154: reg name usage fix
ad9154: check register modifications
Revert "ad9154: check register modifications"
This reverts commit 45121d90edf89f7bd8703503f9f317ad050f9564.
ad9154: fix status code
ad9154: addrinc, recal serdes pll
phaser: coredevice, example tweaks
sawg: missing import
sawg: type fixes
ad9514: move setup functions
ad9154: msb first also decreasing addr
phaser: use sys4x for rtio internal ref
phaser: move init code to main
phaser: naming cleanup
phaser: cleanup pins
phaser: move spi to kernel cpu
phaser: kernel support for ad9154 spi
ad9154: add r/w methods
ad9154: need return annotations
ad9154: r/w methods are kernels
ad9154_reg: portable helpers
phaser: cleanup startup kernel
ad9154: status test
ad9154: prbs test
ad9154: move setup, document
phaser: more documentation
2016-10-05 16:17:50 +02:00
95d7cba34a
drtio: fixes, add aux packet test
2016-09-27 12:46:01 +08:00
e59142e344
drtio: use additive scrambler reset by link init
2016-09-27 11:38:05 +08:00
8a92c2c7e5
drtio: add RX link layer, fixes, simple loopback demo
2016-09-27 11:23:29 +08:00
4e47decdbc
drtio: add scrambler/descrambler and test
2016-09-26 14:14:14 +08:00
whitequark
feeb089505
compiler: warn about unused kernel_invariant entries.
...
Fixes #543 .
2016-09-14 23:28:55 +00:00
c7c8ad126f
pc_rpc: raise AttributeError immediately for nonexistent RPC methods. Closes #534
2016-09-14 11:22:07 +08:00
1cb8f642b4
test: level-based TTL APIs ( #218 )
2016-09-07 17:37:49 +08:00
whitequark
1a518ea7eb
compiler.embedding: implement string concatenation.
...
Fixes #526 .
2016-08-08 04:05:52 +00:00
whitequark
5a2306ae5a
compiler.embedding: implement type annotations for function arguments.
...
Fixes #318 .
2016-08-08 03:28:25 +00:00
whitequark
b6c12f2f56
test: relax RPCTiming rpc_time_stddev from 1ms to 2ms.
...
Even when given exclusive access to our buildserver it still gives
false positives with 1ms.
2016-07-14 10:47:51 +00:00
e0ed99cd7b
Revert "test/ctlmgr: keep trying to ping on OSError"
...
This reverts commit 375e821bd8
.
2016-07-09 08:59:47 +08:00
375e821bd8
test/ctlmgr: keep trying to ping on OSError
...
Since Python 3.5.2, this exception can be raised on Windows when the
connection fails.
2016-07-08 12:40:04 +08:00
whitequark
653eeb476f
runtime: fix serialization of object lists.
...
Fixes #500 .
2016-07-07 12:40:50 +00:00
whitequark
5a79fcf9ba
embedding: reimplement 373578bc
properly.
...
The core of the problem that 373578bc
was attempting to solve is
that diagnostics sometimes should be chained; one way of chaining
is the loc.expanded_from feature, which handles macro-like expansion,
but another is providing context.
Before this commit, context was provided using an ad-hoc override
of a diagnostic engine, which did not work in cases where diagnostic
engine was not threaded through the call stack. This commit uses
the newly added pythonparser context feature to elegantly handle
the problem.
2016-07-07 11:49:21 +00:00
whitequark
d90fd7dc00
compiler: implement numpy.full ( #424 ).
2016-07-07 06:33:38 +00:00
whitequark
7a671fb2fd
embedding: treat numpy.{int32,int64,array} specially ( #424 ).
...
Also, remove them from prelude to not pollute the namespace.
2016-07-07 06:33:38 +00:00
whitequark
933ea53c77
compiler: add basic numpy array support ( #424 ).
2016-07-06 09:51:57 +00:00
whitequark
906db876a6
language: replace coredevice int with numpy.{int32,int64}.
...
Fixes #453 .
2016-07-06 04:44:21 +00:00
whitequark
fa71b40c80
compiler: print the builtin type int(width=...) as np.int...
2016-07-06 04:22:51 +00:00
a1cc964c6c
test/scheduler: test check_pause
2016-06-29 11:44:42 +08:00
43681b37ec
test/rtio: relax constraints
2016-06-29 11:38:36 +08:00
e51928ee97
test/rtio: adapt to new handover behavior
2016-06-29 10:38:37 +08:00
c8dc6ca07c
inter-experiment smooth handover
2016-06-29 02:37:50 +08:00
whitequark
6155f65366
compiler: remove now()/at().
...
Fixes #490 .
2016-06-28 04:39:14 +00:00
whitequark
33e8e59cc7
compiler: implement min()/max() as builtins.
...
Fixes #239 .
2016-06-22 01:09:41 +00:00
whitequark
77d47c2fdd
transforms.artiq_ir_generator: split out finally→reraise control flow.
...
This makes it accessible to introspect by local access validator,
making some previously rejected code valid.
Fixes #331 .
2016-06-22 00:57:32 +00:00
whitequark
f2ae24da39
compiler: add support for Python modules.
...
Fixes #408 .
2016-06-21 23:35:07 +00:00
917cc056f4
test: add test for seamless handover on exception termination
2016-06-19 19:15:10 +08:00
whitequark
c0e42bbfc8
compiler.embedding: always do one final inference pass.
...
Fixes #477 .
2016-06-16 14:18:43 +00:00
033aa33c9e
pyon: support slices
2016-06-15 19:18:46 +08:00
whitequark
e47538ca33
analyzer: explicitly delimit messages (with \x1D).
...
Fixes #461 .
2016-06-07 11:26:49 +00:00
whitequark
355af3e569
embedding: specialize inherited functions.
...
Fixes #414 .
2016-05-16 15:59:26 +00:00
whitequark
0826ceb8ba
Commit missing parts of a5bb4a24
.
2016-05-10 02:12:57 +00:00
whitequark
a5bb4a24af
compiler: support short form of raise.
...
Fixes #240 .
2016-05-10 01:41:40 +00:00
whitequark
4e5d752951
compiler: fix quoting of methods ( fixes #423 ).
2016-05-09 12:25:57 +00:00
136dc7039e
language/environment: update kernel_invariants in setattr_argument and setattr_device
2016-05-03 16:27:42 +08:00
5efa5f5265
style
2016-05-03 16:24:01 +08:00
whitequark
f7d83e9bdf
compiler: make kernel_invariant an instance, not class, property.
...
Fixes #409 .
2016-04-29 13:06:11 +00:00
whitequark
a88425b66b
compiler: allow RPCing builtin functions.
...
Fixes #366 .
2016-04-26 01:31:17 +00:00
whitequark
1464bae6b7
compiler: don't typecheck RPCs except for return type.
...
Fixes #260 .
2016-04-26 01:12:36 +00:00
a0d2dab594
test/pyon: arrays and complex types
2016-04-24 14:27:24 +02:00
caf774579a
environment: refactor
2016-04-16 19:31:07 +08:00
e1a229028d
test/analyzer: clear analyzer buffer after IO init
2016-04-15 01:18:36 +08:00
511913230f
test_analyzer: loop_out.off()
2016-04-14 22:57:16 +08:00
d42ef46471
test: set inputs to input(), should close #383
2016-04-12 18:17:53 +08:00
13b4929dd8
wavesynth: silence is a channel property ( closes #348 )
2016-04-07 21:51:29 +08:00
6a783ead24
test_wavesynth: use matplotlib
2016-04-07 21:36:30 +08:00
whitequark
12d6f1d963
Commit missing parts of bb064c67a
.
2016-04-06 23:46:19 +00:00
whitequark
9cc9e8b276
embedding: s/kernel_constant_attributes/kernel_invariants/g
...
Requested in #359 .
2016-04-06 22:38:31 +00:00
73795ff788
test_rtio: integer division
2016-04-06 02:26:20 +08:00
4bc5eaf9e8
test_rtio: scale speed test results to 'event' intervals
2016-04-06 00:55:13 +08:00
76dcccb33b
test_rtio: comments and correction
...
* add comments what is actually being measured in the two rate tests
* remove spurious factor of two
2016-04-05 20:51:03 +08:00
587a0f4565
worker: trust that h5py maps all types as we want
2016-04-05 17:18:15 +08:00
8078e59077
test_h5types: also test ndarrays
2016-04-05 17:18:15 +08:00
7a5b3a1167
test_h5types: use in-memory files
2016-04-05 17:18:15 +08:00
whitequark
14caa2713c
test_pulse_rate_dds: adjust bounds.
2016-04-05 01:52:34 +00:00
aa61c29efb
transfer Python builtin exceptions over pc_rpc and master/worker
2016-04-04 22:02:42 +08:00
whitequark
10108e6d64
compiler: mark loaded pointers as !dereferenceable.
...
Also, lower the bound for test_pulse_rate_dds, since we generate
better code for it now.
2016-03-31 12:04:38 +00:00
0173031487
test/PulseRateDDS: run more iterations
2016-03-31 16:04:55 +08:00
whitequark
330b232672
test: relax lit/embedding/syscall_flags.
...
We currently have broken debug info. In either case, debug info
is irrelevant to this test.
2016-03-29 13:34:37 +00:00
whitequark
1038f1321f
compiler: allow specifying per-function "fast-math" flags.
...
Fixes #351 .
2016-03-28 21:44:08 +00:00
whitequark
f31249ad1c
Commit missing parts of 6f5332f8
.
2016-03-28 20:28:08 +00:00
whitequark
f4e6b18690
compiler: implement kernel constant attributes.
...
Part of #322 .
2016-03-27 16:10:07 +00:00
whitequark
42609d057e
test_pulse_rate_dds: tighten upper bound to 400us.
2016-03-27 14:27:32 +00:00
whitequark
2a210d74fb
test_pulse_rate: tighten upper bound to 1500ns.
2016-03-26 22:45:24 +00:00
whitequark
8d0566661a
compiler: quote functions directly instead of going through a local.
2016-03-25 22:35:55 +00:00
2bb4ad189a
test: fix controller simulations
2016-03-22 22:29:41 +08:00
1c9b8a1d52
test/coredevice/portability/pulses: compute time differences in MU
2016-03-20 15:29:31 +08:00
ff697a47ce
test/coredevice/cache: fix exception import
2016-03-19 18:00:10 +08:00
whitequark
891e3cf1fe
Commit missing parts of 501de306
.
2016-03-18 22:48:26 +00:00
whitequark
dbc0a89903
dds.c: turn off batch mode before an underflow can be raised.
...
Fixes #334 .
2016-03-18 05:00:05 +00:00
whitequark
ac5061c205
validators.escape: track region of arguments.
...
Fixes #232 .
2016-03-18 03:08:14 +00:00
9ffaf82877
test/analyzer: check that last message is StoppedMessage
2016-03-15 21:44:56 +08:00
a618a6d03a
hardware_testbench: better message when skipping
2016-03-10 12:34:06 +01:00
f68c24094f
test_spi: drain errors and be more strict on where we expect errors
2016-03-10 12:25:10 +01:00
d0cf589229
test/rtio/Loopback: ensure loop_out is low before starting test
2016-03-10 13:24:00 +08:00
f3a2b3a67e
test/rtio: raise exception when pulse is not received
2016-03-10 12:16:18 +08:00
f4f95d330b
Merge branch 'master' of github.com:m-labs/artiq
2016-03-10 11:15:30 +08:00
1739e0f2f8
coredevice: put cache into separate file/device
2016-03-10 10:46:19 +08:00
10a09122ea
test_spi: break_realtime
2016-03-09 18:23:27 +01:00
8f6653ef72
test_spi: simplify test, add collision vs busy test
2016-03-09 17:58:42 +01:00
9a661bd273
hardware_testbench: clean up artiq_core_exeption printing
2016-03-09 17:30:41 +01:00
b50e3fabb0
hardware_testbench: also print artiq_core_exeption
2016-03-09 17:16:55 +01:00
58e0e670fc
tests: test spi business
2016-03-09 15:40:26 +01:00
522ec60f6e
hardware_testbench: don't allow unused *args
2016-03-09 12:28:07 +01:00
2953b069dc
rtio: when rtlink addresses are different, issue collision not replace ( fixes #320 )
2016-03-08 15:58:25 +08:00
71105fd0d7
rtio: collision_error -> collision
2016-03-08 15:38:35 +08:00
59d7f5f1e3
test/coredevice/time_keeps_running: start new session to prevent now_mu save/restore
2016-03-08 14:04:51 +08:00
whitequark
9ffa8cbb11
test_loopback: bump RTT limit to 60ns.
...
Turns out a short jumper wire on a backplane leads to RTT of 50ns
exactly.
2016-03-07 20:27:22 +00:00
683716017b
test: I2C/PCA9548 unittest
2016-03-05 19:01:35 +08:00
f5dee455f5
test/worker: test exception logging
2016-03-02 17:12:22 +08:00
whitequark
7e16da4a77
transforms.llvm_ir_generator: ignore assignments of None ( fixes #309 ).
2016-03-01 12:26:42 +00:00
c7d48a1765
coredevice/TTLOut: add dummy output function
2016-03-01 19:03:10 +08:00
whitequark
63e0c7c07c
Revert wrong parts of 6bd16e44
.
2016-02-27 13:15:49 +00:00
a5bf502917
test/LoopbackCount: request correct devices
2016-02-26 14:29:51 +08:00
whitequark
6bd16e448e
Commit missing parts of 919a49b6
.
2016-02-25 20:02:31 +00:00
whitequark
8e77e561cd
test: bring back test_loopback_count ( fixes #295 ).
2016-02-25 18:46:55 +00:00
whitequark
18274a09a1
Commit missing parts of 4426730
.
2016-02-25 02:05:44 +00:00
whitequark
652c2a185f
test: rewrite tests using ttl_inout to use loop_{in,out} ( #265 ).
2016-02-24 18:27:08 +00:00
whitequark
956448bd8d
test: skip RPC timing tests by default.
2016-02-24 15:09:22 +00:00
53d5a458a2
test/hardware_testbench: properly close devices
2016-02-23 16:00:53 +08:00
82f4fd1290
test/coredevice: convert to 'with parallel'
2016-02-23 15:48:12 +08:00
whitequark
bc81be1345
Implement dumb 'with parallel' ( #265 ).
2016-02-22 13:51:08 +00:00
whitequark
51a5910002
Rename 'with parallel' to 'with interleave' ( #265 ).
2016-02-22 13:24:43 +00:00
whitequark
b0e7fddc32
lit: unbreak on non-conda.
2016-02-22 13:16:43 +00:00
1891725e12
wavesynth: cleanup
2016-02-18 14:13:40 +01:00
b4ea318e6d
coefficients: add comparison unittest
2016-02-18 14:13:40 +01:00
ca3cced0b4
test/ctlmgr: escape backslashes in sys.executable
2016-02-18 10:02:55 +01:00
whitequark
f28b259b5f
Commit missing parts of 74a75841
.
2016-02-15 19:36:19 +00:00
1fc51f32ed
test/scheduler: fix
2016-02-15 18:31:26 +01:00
055573a4af
Merge branch 'subprocess-termination'
...
* subprocess-termination:
test_ctlmgr: fix
Client: add note about timeout sideeffects
hardware_testbench: full shutdown sequence for controllers
worker: flake8 style cleanup
ctlmgr: fix import
pc_rpc.Client: support socket timeouts
subprocesses: unify termination logic
2016-02-14 22:28:11 +01:00
b97be9c08d
Merge branch 'newtesting'
2016-02-14 21:30:19 +01:00
c9a9d19182
test/serialization: fix syntax
2016-02-11 09:37:27 +01:00
6434a9cd5f
Merge branch 'master' into subprocess-termination
...
* master: (44 commits)
Revert "conda: restrict binutils-or1k-linux dependency to linux."
manual/installing: refresh
use https for m-labs.hk
gui/log: top cell alignment
master/log: do not break lines
conda: fix pyqt package name
gui/applets: log warning if IPC address not in command
applets: make sure pyqtgraph imports qt5
applets: avoid argparse subparser mess
examples/histogram: artiq -> artiq.experiment
gui/applets: save dock UID in state
setup.py: give up trying to check for PyQt
setup.py: fix PyQt5 package name
Use Qt5
applets: fix error message text
applets: handle dataset mutations
applets: properly name docks to support state save/restore
applets: clean shutdown
protocols/pyon: set support
protocols/pyon: remove FlatFileDB
...
2016-02-11 09:24:45 +01:00
8be0696b39
protocols/pyon: set support
2016-02-08 14:08:14 +01:00
912274c6af
test_ctlmgr: fix
2016-02-05 15:08:49 -07:00
c52081ca0d
Merge remote-tracking branch 'm-labs/newtesting' into subprocess-termination
...
* m-labs/newtesting:
style
assume 'import artiq' works before running tests
test/ctlmgr: use sys.executable, use default localhost binding
2016-02-03 15:00:00 -07:00
ab81dbbd19
Merge remote-tracking branch 'm-labs/master' into subprocess-termination
...
* m-labs/master:
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
setup.py: remove stale import
remove stale dependency on pyelftools
2016-02-02 23:34:37 -07:00
f7df393248
hardware_testbench: full shutdown sequence for controllers
2016-02-02 15:32:40 -07:00
9ca8b48bf9
assume 'import artiq' works before running tests
2016-02-02 21:52:33 +01:00
ca8a075f46
test/ctlmgr: use sys.executable, use default localhost binding
2016-02-02 21:08:51 +01:00
b7de92e96c
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
2016-02-02 18:41:57 +01:00
0d18942869
hardware_testbench: request controller termination
2016-01-30 20:04:32 -07:00
d05d720b19
tests: misc fixes, cleanup
2016-01-29 17:32:59 -07:00
4a29f0702f
test.ctlmgr: drop a redundant lambda
2016-01-28 16:59:59 -07:00
bb1db7d7fd
test.ctlmgr: add basic test tooling
2016-01-28 16:54:14 -07:00
ab5e8fd8da
hardware_testbench: fix timeout handling
2016-01-28 15:41:38 -07:00
982fbb0670
hardware_testbench: use plain subprocess to start controllers
2016-01-28 15:31:01 -07:00
1b7020dff3
hardware_testbench: run Crontrollers loop in thread, not the test
2016-01-27 18:45:08 -07:00
99f788965e
Merge branch 'master' into testbench-controllers
...
* master:
gui/experiments: float/bring into focus already open docks when opening experiments
gui: reduce size of console dock
protocols/logging,pc_rpc: do not print errors on Windows when clients disconnect
gui: reduce size of schedule dock
worker: Windows VMs are slow, increase send_timeout
protocol/sync_struct: Windows also raises ConnectionAbortedError on disconnection
gui: reduce size of log dock
gui: reduce size of experiment dock
protocols/logging/LogParser: handle Windows CRLF
pyon: handle \r
test/pipe_ipc: re-enable
protocols/asyncio_server: minor cleanup
protocols/pipe_ipc: Windows support
Revert "Revert "test/pipe_ipc: temporarily skip test""
Revert "try debugging weird unittest failure"
try debugging weird unittest failure
conda: restrict binutils-or1k-linux dependency to linux.
transforms.iodelay_estimator: make diagnostics much more clear.
Fix typo.
2016-01-27 14:26:35 -07:00
f78eecb81b
hardware_testbench: run controllers
2016-01-27 14:24:32 -07:00
590354dbc8
pyon: handle \r
2016-01-27 20:43:42 +01:00
b753306f12
Merge branch 'worker_pipeipc'
2016-01-27 19:37:06 +01:00
3d9fc7a51f
test/pipe_ipc: re-enable
2016-01-27 19:20:04 +01:00
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
ccac8525d2
lda: test tweaks
2016-01-26 15:24:29 -07:00
5aa4de8e89
refactor logging and implement in worker
2016-01-26 20:31:42 +01:00
6383253e03
protocols/pipe_ipc: autoclose pipe fds on process exit in AsyncioParentComm
2016-01-26 14:55:52 +01:00
7a9864b260
Revert "test/pipe_ipc: temporarily skip test"
...
This reverts commit 3a73673e71
.
2016-01-26 09:42:59 +01:00
3a73673e71
test/pipe_ipc: temporarily skip test
2016-01-25 19:21:03 -07:00
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
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
dcea6780c6
protocols/pipe_ipc: implement AsyncioChildComm for Unix (affected by python/asyncio#314 )
2016-01-26 00:48:12 +01:00
8befc6a8fc
protocols: add pipe_ipc (incomplete)
2016-01-25 22:49:32 +01:00
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
16a1ab4418
test/harness: exec in globals
2016-01-18 16:55:10 -07:00
a1201252e2
artiq/test/{not,harness}.py: usual CLI handling
2016-01-18 16:00:46 -07:00
d7e4783cae
lit-test: move to artiq/test
2016-01-18 15:28:24 -07:00
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
17802d3cff
test/coredevice/primes: keep output list entirely on the host
2015-12-31 09:49:37 +08:00
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
7eb4067477
test/coredevice/analyzer: test TTL input mode
2015-12-26 21:10:19 +08:00
7475b3813e
test/coredevice: PEP8
2015-12-24 19:26:42 +08:00
bf1a3a5b8f
test/coredevice: add analyzer unittest
2015-12-24 19:25:29 +08:00
b4b0dcc5d1
test/coredevice/rtio: remove obsolete functions
2015-12-22 12:11:13 +08:00
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
5e38cad64c
test/coredevice: partial update to new APIs
2015-12-16 19:45:57 +08:00
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
40b4129c65
Only support scalars and numpy arrays in HDF5 output. Update documentation. Closes #145
2015-10-28 18:33:42 +08:00
9f2ff32948
test/sync_struct: nparray mutation
2015-10-26 23:41:05 +08:00
fcd29492f9
worker_db: support more types in HDF5 output. Closes #144 . Closes #121
2015-10-24 10:54:59 +08:00
d13b368a65
build logging into worker
2015-10-20 18:11:50 +08:00
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
1d14975bd5
worker: cleaner termination on exception in user code, improve unittest
2015-10-13 01:11:57 +08:00
a754d4b5f5
test: use new dataset API
2015-10-12 19:20:04 +08:00
a83ffb3dce
protocols: move FlatFileDB into pyon
2015-10-12 18:19:28 +08:00
139072d402
Graceful experiment termination. Closes #76
2015-10-06 13:50:00 +08:00
d94f0211a6
test/scheduler: cleanup
2015-10-06 13:35:30 +08:00
50a5a3baf0
environment: attr_* -> setattr_*
2015-10-04 00:18:21 +08:00
090a7e5871
test/sync_struct: cleanup
2015-10-03 19:40:11 +08:00
f552d62b69
use Python 3.5 coroutines
2015-10-03 19:28:57 +08:00
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
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
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
06badd1dc1
scheduler: refactor, fix pipeline hazards
2015-08-10 21:58:11 +08:00
52de6311a4
test/scheduler: add repo_msg
2015-08-10 20:07:24 +08:00
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
1d34c06d79
rtio: detect collision errors
2015-07-29 19:43:35 +08:00
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
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
05dd11a60d
protocols/pyon: support numpy scalars ( closes #53 )
2015-07-25 12:28:56 +08:00
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
84de2fb28b
expid: experiment -> class_name
2015-07-15 11:08:12 +02:00
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
56fc7a484c
TTLInOut: timestamp -> timestamp_mu
2015-07-13 23:21:29 +02:00
820ff2da2c
test/coredevice: WA for lack of constant string support in compiler (see issue #68 )
2015-07-13 22:22:26 +02:00
32d141f5ac
refactor ddb/pdb/rdb
2015-07-13 22:21:32 +02:00
8b02b58a77
sync_struct/Notifier: do not pass root param to publish
2015-07-13 17:12:59 +02:00
80eea4ce6c
test: relax test_time_keeps_running
...
on pipistrello this takes about 200-250ms
2015-07-09 16:30:37 -06:00
96a5d73c81
worker: split build stage from prepare
2015-07-09 13:18:12 +02:00
f3e5197c14
test/coredevice/test_time_keeps_running: remove unnecessary close_devices, upper bound
2015-07-07 15:48:47 +02:00
8a33d8c868
never stop RTIO counter
2015-07-07 15:29:38 +02:00
a3fe538067
test: fix get_from_ddb
2015-07-04 22:36:23 -06:00
409c66e966
test: convert lda/tcube/409b to hardware_testbench
2015-07-04 21:44:28 -06:00
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
4cbf280f1a
test: return experiment not, rdb
2015-07-04 20:05:11 -06:00
753d61b38f
complete support for TTL clock generator
2015-07-04 18:36:01 +02:00
a615a3830a
test/coredevice: minor fixes
2015-07-04 18:35:11 +02:00
74f07092c7
test/coredevice: fix timestamp conflict
2015-07-02 10:26:00 +02:00
771ad6cb26
test/coredevice: adapt to MU API
2015-07-01 22:34:49 +02:00
5ace0f8e7a
Merge branch 'master' of https://github.com/m-labs/artiq
2015-07-01 22:23:10 +02:00
9d6287a6a3
expose machine units to user
2015-07-01 22:22:53 +02:00
f7427dda39
test: make benchmarks unittest
2015-06-28 20:56:12 -06:00
593dafc118
test: hardware testbench
2015-06-28 20:55:59 -06:00
85c5b157a0
test/full_stack: tolerate FP rounding errors
2015-06-27 23:52:20 +02:00
c71fe29792
simplify unit system and use floats by default
2015-06-26 16:34:37 +02:00
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
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
26e737f61f
style
2015-06-06 00:55:36 +08:00
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
d73006652b
test/worker: always close even if prepare() raises
2015-06-04 11:22:03 +08:00
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
048782e26c
test/scheduler: test flush
2015-05-29 20:16:47 +08:00
6ff2e1a083
test/scheduler: verify that a high priority timed experiment in the future is not run
2015-05-29 19:43:39 +08:00
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
0b05b54a87
test: add scheduler unittest
2015-05-27 19:25:50 +08:00
f30d671359
test/worker: adapt to priority API
2015-05-24 23:38:05 +08:00
785623be26
test/worker: adapt to new scheduler API
2015-05-21 16:41:45 +08:00
a62ae1d8d7
test/transforms: adapt to 'now' save on core device
2015-05-12 23:06:33 +08:00
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
1684586ae8
test: add unittest for core device watchdog
2015-05-01 14:02:31 +08:00