whitequark
009d396740
Move mu_to_seconds, seconds_to_mu to Core.
2016-11-21 05:37:30 +00: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
whitequark
6fcd57a41a
runtime: fix remaining async RPC bugs.
2016-11-01 10:33:57 +00:00
whitequark
6b2789e3db
test: add more RPC tests.
2016-10-06 12:54:08 +00:00
1cb8f642b4
test: level-based TTL APIs ( #218 )
2016-09-07 17:37:49 +08: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
whitequark
653eeb476f
runtime: fix serialization of object lists.
...
Fixes #500 .
2016-07-07 12:40:50 +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
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
917cc056f4
test: add test for seamless handover on exception termination
2016-06-19 19:15:10 +08:00
whitequark
e47538ca33
analyzer: explicitly delimit messages (with \x1D).
...
Fixes #461 .
2016-06-07 11:26:49 +00:00
136dc7039e
language/environment: update kernel_invariants in setattr_argument and setattr_device
2016-05-03 16:27:42 +08: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
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
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
whitequark
14caa2713c
test_pulse_rate_dds: adjust bounds.
2016-04-05 01:52:34 +00: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
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
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
9ffaf82877
test/analyzer: check that last message is StoppedMessage
2016-03-15 21:44:56 +08: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
58e0e670fc
tests: test spi business
2016-03-09 15:40:26 +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
c7d48a1765
coredevice/TTLOut: add dummy output function
2016-03-01 19:03:10 +08:00
a5bf502917
test/LoopbackCount: request correct devices
2016-02-26 14:29:51 +08:00
whitequark
8e77e561cd
test: bring back test_loopback_count ( fixes #295 ).
2016-02-25 18:46:55 +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
82f4fd1290
test/coredevice: convert to 'with parallel'
2016-02-23 15:48:12 +08:00
whitequark
51a5910002
Rename 'with parallel' to 'with interleave' ( #265 ).
2016-02-22 13:24:43 +00:00
9ca8b48bf9
assume 'import artiq' works before running tests
2016-02-02 21:52:33 +01: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
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
whitequark
bd5b324fc2
Merge branch 'master' into new-py2llvm
2015-10-13 19:24:45 +03:00
whitequark
3e1348a084
Merge branch 'master' of github.com:m-labs/artiq into new-py2llvm
2015-09-27 18:22:28 +03: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
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