2
0
mirror of https://github.com/m-labs/artiq.git synced 2024-12-28 12:48:26 +08:00
Commit Graph

2971 Commits

Author SHA1 Message Date
78366ed9db runtime: add missing include 2016-07-27 20:22:59 +08:00
f1d8848bb1 runtime: support boards without DDS 2016-07-27 19:20:49 +08:00
8fab789e39 runtime: support RTIO configurations without address (e.g. all simple TTL out) 2016-07-27 19:20:13 +08:00
7928ee4a6e runtime: support boards without RTIO CRG 2016-07-27 19:18:14 +08:00
a89f96e24b runtime: support boards without LEDS 2016-07-27 19:16:55 +08:00
5fc3a52189 artiq_flash: expose scripts_path 2016-07-25 10:05:10 +08:00
454b48df97 pipistrello: shrink fifos a bit more to relax pnr 2016-07-23 12:55:49 +02:00
209934485f examples/handover: put slack after reset. Closes #520 2016-07-20 11:52:30 +08:00
0590021790 artiq_flash: support using alternative OpenOCD config files 2016-07-19 15:35:50 +08:00
0744620787 examples/device_db: explain where comments are shown (#518) 2016-07-18 21:43:57 +02:00
6084eff85e tools: help string wording 2016-07-18 19:47:05 +02:00
9785b39edd tools: support wildcard bind: --bind '*' 2016-07-18 18:30:49 +02:00
b9000fa267 tools: __all__ update 2016-07-18 18:30:49 +02:00
0963b07774 dashboard: remove vestige of status bar. Closes #517 2016-07-19 00:01:59 +08:00
1877329fd1 dashboard: style 2016-07-18 16:51:17 +02:00
6a7377244b tools: style 2016-07-18 16:50:45 +02:00
bb706c1fe2 browser/dashboard: use appdirs, closes #438 2016-07-18 16:50:27 +02:00
340d65fec7 add appdirs
1.4.1
MIT license
https://github.com/ActiveState/appdirs/blob/master/appdirs.py
2016-07-18 16:40:18 +02:00
a7e101af8d artiq_flash: fix openocd scripts path (#513) 2016-07-15 15:31:33 +02: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
c0d59140fe pc_rpc: increase firstcon_timeout to 1 s
let's see whether this is enough on windows:

http://buildbot.m-labs.hk/builders/artiq-win64-test/builds/258/steps/python_unittest/logs/stdio

test_attenuation (artiq.test.test_lda.TestLda) ... first connection attempt to ::1:3253[<class 'artiq.protocols.pc_rpc.AutoTarget'>] failed, retrying in the background
Traceback (most recent call last):
  File "c:\slave64\artiq-win64-test\build\artiq\protocols\pc_rpc.py", line 301, in __init__
    self.__coninit(firstcon_timeout)
  File "c:\slave64\artiq-win64-test\build\artiq\protocols\pc_rpc.py", line 317, in __coninit
    (self.__host, self.__port), timeout)
  File "c:\slave64\miniconda\envs\buildbot-artiq-win64-test-258\lib\socket.py", line 711, in create_connection
    raise err
  File "c:\slave64\miniconda\envs\buildbot-artiq-win64-test-258\lib\socket.py", line 702, in create_connection
    sock.connect(sa)
socket.timeout: timed out
2016-07-13 18:45:57 +02:00
whitequark
c50d436f0b ir: invoke is a valid delay decomposition.
Fixes #510.
2016-07-13 08:48:31 +00:00
1c32d4fb71 monkey-patch Python 3.5.2 to disable broken asyncio.base_events._ipaddr_info optimization (#506) 2016-07-13 11:35:16 +08:00
whitequark
c5ba44b8a6 compiler.testbench.perf_embedding: more fine grained reporting. 2016-07-11 17:55:24 +00:00
aa1f32a5df browser: port ae914d2 2016-07-09 19:13:22 +02:00
ee5b269823 browser: port b769403 2016-07-09 18:48:05 +02:00
42093ace8d browser: port ea13d00 2016-07-09 18:46:16 +02:00
5cfdaee46a browser: recompute and load buttons side-by-side 2016-07-09 18:43:36 +02:00
6d0ae689e9 browser: remove copy_rev stub 2016-07-09 18:41:30 +02:00
7ce9fc714a browser: permanently show results' metadata, closes #471 2016-07-09 18:29:01 +02:00
48a42cdb34 browser: move load-args button into area 2016-07-09 17:20:43 +02:00
9ca27e6d7f worker_impl: style 2016-07-09 16:58:19 +02:00
cfb9fb808c worker: also return DummyDevice from ExamineDeviceMgr 2016-07-09 16:53:28 +02:00
7a2405146a rtio: do not reset DDS and SPI PHYs on RTIO reset (#503) 2016-07-09 10:07:19 +08:00
e0ed99cd7b Revert "test/ctlmgr: keep trying to ping on OSError"
This reverts commit 375e821bd8.
2016-07-09 08:59:47 +08:00
whitequark
c4dc4e7bf5 compiler.testbench.perf_embedding: update for core changes. 2016-07-08 10:48:41 +00:00
whitequark
c7a5ec9e61 runtime: update ppp code for lwip 2.0.0.
Fixes #499.
2016-07-08 09:27:15 +00: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
2a5a1f320f browser, worker: feed experiments dummy devices, closes #454
* just returning `None` as dummy device (like ExamineDeviceMgr)
is not explicit enough, certainly hard to debug
* introducing a special flag for the `build` action does not
seem the right place
2016-07-08 01:23:28 +02:00
b7cca38f72 browser: let the state manager handle the subcomponents 2016-07-07 16:16:32 +02: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
373578bc02 embedding: fix location for diagnostics on quoted values.
Fixes #489.
2016-07-07 08:32:56 +00:00
c065b5866f require Python 3.5.2, remove monkey patches 2016-07-07 14:55:21 +08:00
8cb29fcb3b targets/kc705: redefine user SMAs as 3.3V IO. Closes #502 2016-07-07 14:53:01 +08: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
73ac153509 spi: expose more documentation on chaining transfers 2016-07-04 12:43:33 +02:00
71921de5bd spi: do not shift when starting a xfer, closes #495 2016-07-04 12:22:47 +02:00
4a6c270afe browser: stub copy repo rev 2016-07-04 01:19:26 +02:00
dd349b0701 dashboard: simplify dataset editing code 2016-07-03 12:23:56 +08:00
77f60a3e63 browser: support uploading datasets to master. Closes #480 2016-07-03 12:21:36 +08:00
0173a40be0 browser: log runs 2016-07-03 12:20:23 +08:00
cc9edc1555 frontend/client: support keeping persist flag 2016-07-03 12:19:46 +08:00
fdc25777da master/dataset_db: support keeping old persist flag 2016-07-03 12:19:01 +08:00
4c8a8357b0 worker: increase send_timeout (Windows can be really slow) 2016-07-03 12:18:34 +08:00
6ee0f65b12 browser: ditto 11930228fd 2016-07-01 18:47:04 +08:00
11930228fd dashboard: kill the Qt built-in main window closing mechanism
When the main window is closed, Qt makes QApplication.exec() return, which conflicts with Quamash's implementation of loop.run_until_complete(). The conflict causes Quamash's run_forever() to return earlier than it should, and cause "RuntimeError('Event loop stopped before Future completed.')".

Closes #475
2016-07-01 18:39:26 +08:00
ea13d00087 dashboard: preserve argeditor state across argument recomputations. Closes #486 2016-07-01 15:23:40 +08:00
2d1a47ca98 fix indentation 2016-07-01 15:19:52 +08: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
c6e54e3016 coredevice/core: add syscall type annotation 2016-06-29 10:38:19 +08:00
c8dc6ca07c inter-experiment smooth handover 2016-06-29 02:37:50 +08:00
ef8f60c78d Revert "runtime: save now on RPC"
This reverts commit 155794a671.
2016-06-29 02:37:50 +08:00
whitequark
ef2af8c331 compiler.embedding: use the builtin print as RPC.
Fixes #206.
2016-06-28 04:42:41 +00:00
whitequark
6155f65366 compiler: remove now()/at().
Fixes #490.
2016-06-28 04:39:14 +00:00
03a69ec5b7 scheduler: add check_pause function 2016-06-27 14:37:29 +08:00
5853e31ac2 coredevice/comm_tcp: more appropriate exception 2016-06-26 19:08:40 +08:00
bc7d06468f coredevice/comm_generic: style 2016-06-26 18:50:02 +08:00
whitequark
21574bdfa9 compiler.embedding: rename user-defined types with identical names.
Fixes #478.
2016-06-22 01:32:01 +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
whitequark
5c54a6a0e9 Upgrade lwip to 2.0.0 to fix the keepalive bug #456. 2016-06-21 14:47:19 +00:00
88d6d0db06 browser: also support loading arguments by button and activation, closes #479 2016-06-21 13:14:33 +02:00
whitequark
cae6e8639e Revert "runtime: disable lwip TCP keepalive."
This reverts commit 0db6ef0e1c.
2016-06-21 09:45:53 +00:00
whitequark
0db6ef0e1c runtime: disable lwip TCP keepalive.
This sometimes results in an RST sent by lwip after a retransmission,
although it is not clear exactly why. See #456.
2016-06-20 18:55:29 +00:00
f5deafb267 browser: add a debug message for OSError on HDF5 open 2016-06-20 18:02:47 +02:00
155794a671 runtime: save now on RPC 2016-06-19 19:29:46 +08:00
0acc52d513 runtime: minor cleanup 2016-06-19 19:26:30 +08:00
917cc056f4 test: add test for seamless handover on exception termination 2016-06-19 19:15:10 +08:00
8e308481c1 runtime: save now when terminating with exception 2016-06-19 19:07:09 +08:00
2ae20fbc4d runtime: cleanup now_init/now_save 2016-06-19 19:06:32 +08:00
b769403667 dashboard: larger experiment initial window size 2016-06-19 09:31:19 +08:00
b3b0e19d21 dashboard: compute initial experiment window size from font metrics 2016-06-19 08:50:38 +08:00
ae914d2611 dashboard/experiments: look improvements 2016-06-18 18:55:25 +08:00
ec3e7792dc add MultiScanManager 2016-06-18 16:30:34 +08:00
80cf321233 dashboard: do not use Qt recursive event loop 2016-06-18 14:34:23 +08:00
9a1cad5cec dashboard: basic dataset editing capabilities 2016-06-17 16:45:26 +08:00
whitequark
c0e42bbfc8 compiler.embedding: always do one final inference pass.
Fixes #477.
2016-06-16 14:18:43 +00:00
whitequark
26117e8d93 transforms.inferencer: allow variable as type of n in []*n.
Fixes #473.
2016-06-16 13:35:00 +00:00
53eb35cbb8 browser: suppress icon warnings from inaccessible datasets, closes #470 2016-06-15 16:54:06 +02:00
a8b211f891 spi: cross-reference bit ordering and alignment, closes #482 2016-06-15 15:04:04 +02:00
033aa33c9e pyon: support slices 2016-06-15 19:18:46 +08:00
60657c30b0 dashboard: add button to disable other scans 2016-06-15 19:06:04 +08:00
490bb6ef2d gui: save/restore last folder outside repository. Closes #476 2016-06-12 13:18:22 +08:00
ad3d7dc687 browser: cut logging verbosity 2016-06-12 13:11:36 +08:00
3aab77d7a0 doc: precisions about time cursor interaction 2016-06-12 13:08:47 +08:00
7dff446932 language: support setting slices of data in mutate_dataset 2016-06-12 13:08:29 +08:00
3b63c39d2f gui/scanwidget: use -inf/inf to represent absence of boundaries (consistently with QDoubleSpinbox) 2016-06-11 17:25:46 -06:00
765e3f0b5d gui/entries/_RangeScan: set range before setting value. Fixes clamping to 99.99 2016-06-11 17:25:46 -06:00
60d8e30ecd scanwidget: value may be None 2016-06-11 17:25:46 -06:00
b9c3edd49f Revert "coredevice: automatically close on pause"
This reverts commit 1f50b3428e.
2016-06-11 10:12:36 -06:00
eb359ce50b Revert "master/worker: pause/resume devices"
This reverts commit 437b37b158.
2016-06-11 10:11:11 -06:00
44724197c5 Revert "master/worker_db: add pause_devices and resume_devices"
This reverts commit 3c70bc40a4.
2016-06-11 10:11:07 -06:00
3bd190e624 gateware/nist_clock: increase DDS bus drive strength. Closes #468 2016-06-07 11:08:19 -04:00
whitequark
e47538ca33 analyzer: explicitly delimit messages (with \x1D).
Fixes #461.
2016-06-07 11:26:49 +00:00
whitequark
57be065c15 artiq_flash: explicitly pass path within conda env to openocd datarootdir.
By default, openocd searches for scripts in DATAROOTDIR/openocd/scripts.
This of course makes it not relocatable. Conda has a flag to try to
detect and fix such hardcoded paths, but it does not work on openocd
(likely because the .rodata contains an already concatenated path,
which cannot be padded with zeroes from the right).

So, we pass the path explicitly instead.
2016-06-06 19:01:39 +00:00
6db96f81d5 gui/moninj: reduce logging level of UDP failure 2016-06-04 16:33:56 -04:00
c49be807e4 gui/moninj: do not crash when there is no network 2016-06-04 16:31:17 -04:00
6983f3520a explorer: fix directory listing error handling 2016-06-04 10:18:29 -04:00
0ac0547bca dds: use fast math for asf computations 2016-06-03 23:34:32 -04:00
dhslichter
98ae779941 dds: fix asf_to_amplitude 2016-06-03 23:02:16 -04:00
e9a8c4b540 gui/entries: remove unneeded parent 2016-06-03 22:56:45 -04:00
ec3641551c examples: run should not return a value 2016-06-03 22:55:50 -04:00
9ec142e4f6 examples/histograms: convert to mutate_dataset API. Closes #459 2016-05-31 20:25:15 -05:00
5b0f963b98 applets/plot_xy: use numpy array for default X axis. Closes #458 2016-05-30 22:48:32 -05:00
e6a351c5ea gui: fix explicit scan input validation 2016-05-30 15:45:28 -05:00
03eeec55b2 gui: better log levels 2016-05-30 15:04:49 -05:00
55fdfc618b gui/log: fix clearing multi-line messages 2016-05-28 13:48:02 -05:00
0faa2d56b4 language/environment: autoset scale for common units. Closes #448 2016-05-28 13:37:18 -05:00
8b556ef6d5 language/environment: be more verbose in NumberValue unit/scale documentation (#448) 2016-05-28 13:23:16 -05:00
7851391666 artiq_compile: adapt to code changes 2016-05-28 12:57:04 -05:00
a120a09d79 gui/log: add clear button (#411) 2016-05-28 11:10:32 -05:00
ab749560c2 dashboard: forward local log messages to docks, replace status bar (#411) 2016-05-28 11:10:25 -05:00
10267f39c9 log: use broadcast instead of sync_struct, filter on new messages only (#411) 2016-05-27 23:43:29 -05:00
f24f7380f5 gui: fix new() being called with arguments by qt (closes #444) 2016-05-25 23:13:00 +02:00
f5da3f63aa browser: use actual field names for tooltip 2016-05-25 22:21:07 +02:00
7f39db9c8e browser: file/class info in tooltip 2016-05-25 18:55:39 +02:00
f9ab3eeb36 browser: add result metadata tooltip 2016-05-25 18:47:06 +02:00
8c1f1d8f2a rpctool: make readline optional, add to conda dependencies. Closes #442 2016-05-25 11:11:59 -05:00
ec34a552b0 browser: add cascade and tile 2016-05-25 17:34:01 +02:00
78de2a7d5c browser: MainWindow -> Browser and refactor 2016-05-25 17:34:01 +02:00
7fb6b3db21 protocols/broadcast: minor fixes 2016-05-25 10:32:36 -05:00
57e3d9ee34 browser: react to b3e55b7 2016-05-25 16:36:27 +02:00
26e98a13d0 browser: refactor log 2016-05-25 15:14:04 +02:00
b3e55b753b environment,dashboard: generalize multiple defaults, fix HDF5 argument load 2016-05-24 08:58:34 -05:00
43081b4f64 language,gui: support setting unselected scan default values. Closes #417 2016-05-23 15:03:05 -07:00
69ffa21133 language/RandomScan: automatic seed by default 2016-05-23 15:03:05 -07:00
b27682ad20 browser: fix argument reset (closes #439) 2016-05-23 11:19:30 +02:00
b8e7ea8443 browser: cleanup 2016-05-23 11:19:30 +02:00
9dd7ea0bcd protocols: add broadcast (untested) 2016-05-22 17:20:39 -07:00
114b305203 use recommended asyncio.ensure_future instead of asyncio.Task 2016-05-22 16:36:29 -07:00
a46d3ff366 browser: remove unnecessary loop.call_soon 2016-05-22 10:22:29 -07:00
fbd3db5753 pyon: move string escaping table, add more info in errors 2016-05-22 16:53:39 +02:00
0857cfdcb1 short_format: cover a few more numpy types correctly 2016-05-22 16:53:39 +02:00
9e681590cb pyon: ship ndarray data as bytes
this is about 3 times faster and since the encapsulating nparray() already
breaks json-compatibility, using a unicode string for json compatibility
is not necessary
2016-05-22 16:53:37 +02:00
a9434d2e9f pyon: use dtype.str
* contains endianess, makes this portable
* it's shorter
* it's what the numpy array interfaces uses
* this is otherwise backwards and forwards compatible
2016-05-22 16:52:59 +02:00
3d6f55104b coredevice/TCA6424A: convert 'outputs' value to little endian. Closes #437 2016-05-22 06:53:18 -07:00
852ddb7796 bit2bin: close input file explicitly 2016-05-21 21:50:08 +08:00
65c835e991 Revert "flash: close tempfile before deleting (#256)"
This reverts commit 5f11dbf319.
2016-05-21 00:19:54 +08:00
5f11dbf319 flash: close tempfile before deleting (#256) 2016-05-21 00:09:31 +08:00
5f7f4ed398 browser: wire up log dock 2016-05-20 16:12:11 +02:00
af317f9b64 gui.models: clean up LocalModelManager a bit 2016-05-20 16:12:11 +02:00
9c30f62790 browser: log_worker_exception 2016-05-20 16:12:11 +02:00
3db1a7cf01 browser: log stub 2016-05-20 16:12:11 +02:00
e5a75ea0f4 gui.log: export LogDock 2016-05-20 16:12:11 +02:00
7a71939201 dashboard.log -> gui.log 2016-05-20 16:12:11 +02:00
8ab6011ddb browser: move 'open experiment' to menu 2016-05-20 16:12:11 +02:00
dhslichter
141edb521a qc2: swap SPI/TTL, all TTL lines are now In+Out compatible 2016-05-19 10:42:03 +08:00
109ddf919e flash: tcl-quote paths (c.f. #256) 2016-05-16 23:15:12 +02:00
18878ba050 flash: use the handle 2016-05-16 22:02:11 +02:00
3ae44e762f flash: close files (c.f. #256) 2016-05-16 21:30:53 +02:00
whitequark
355af3e569 embedding: specialize inherited functions.
Fixes #414.
2016-05-16 15:59:26 +00:00
whitequark
640022122b embedding: refactor some more. 2016-05-16 14:38:09 +00:00
whitequark
d085d5a372 embedding: refactor. 2016-05-16 14:38:09 +00:00
whitequark
c94c411fd5 compiler: demangle symbols.
In future commits we'll add Itanium C++ ABI style mangling to ARTIQ
emitted function names.
2016-05-16 14:38:09 +00:00
8bff8075de browser: clean up 2016-05-16 11:46:14 +02:00
ecdbf2ae08 browser: wire up activate in list 2016-05-16 11:45:13 +02:00
f1747b5ea5 browser: only load args from first file 2016-05-16 11:27:51 +02:00
fe69712cc5 browser: dis/enable analyze/terminate buttons 2016-05-13 15:43:02 +02:00
633c36336c browser: rm status bar 2016-05-13 15:28:36 +02:00
5b5c9b2bb7 browser: pass mods to applets (closes #434) 2016-05-13 15:27:23 +02:00
260390b75f browser: set objectName for toolbar 2016-05-12 19:20:52 +02:00
5e094528c1 browser: toolbar, rm mdiarea tooltip (closes #433) 2016-05-12 19:06:33 +02:00
07b80cc5ab browser: basic analyze() 2016-05-12 18:44:03 +02:00
1480bb5630 browser: style 2016-05-12 18:43:05 +02:00
8185a3d701 flopping_f_simulation: style 2016-05-12 18:31:30 +02:00
2a5eaea411 flopping_f_simulation: use ufuncs in model() 2016-05-12 18:30:52 +02:00
5d58258bf2 examples: reconstruct scans when analyze()ing HDF5 files 2016-05-12 12:59:36 +02:00
cd1304547d browser: analyze stubs 2016-05-11 15:37:09 +02: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
6d29e768a5 Commit missing parts of 4e5d75295. 2016-05-09 12:51:24 +00:00
whitequark
4e5d752951 compiler: fix quoting of methods (fixes #423). 2016-05-09 12:25:57 +00:00
4c78bb4950 browser: cleanup 2016-05-09 00:32:15 +02:00
4fee2055a5 browser: fixes/string style 2016-05-08 23:43:33 +02:00
02b54930a9 browser: examine can fail 2016-05-08 23:32:22 +02:00
904db4923c dashboard/experiments: style 2016-05-08 18:14:01 +02:00
c5fcb6b8d5 dashboard: use get_open_file_name 2016-05-08 18:14:01 +02:00
c44e786cc5 browser: open experiments on lmb 2016-05-08 18:14:01 +02:00
66927da70c browser: add HDF5 to experiment DND 2016-05-08 00:06:58 +02:00
4016e5adaa browser: support opening experiments 2016-05-07 23:22:39 +02:00
5332c198c2 gui/tools: add getOpenFileName 2016-05-07 19:01:14 +02:00
47c7b04ac6 browser: experiment dock cleanup 2016-05-07 12:53:37 +02:00
ee8160863a browser: experiment dock stubs 2016-05-07 12:53:37 +02:00
77b84a7979 browser: move exp mgmt to mdi area 2016-05-07 12:53:37 +02:00
9ef282636a browser: don't open experiments from data list view 2016-05-07 12:53:37 +02:00
9f1bef1c81 browser: open experiments from mdiarea 2016-05-07 12:53:37 +02:00
d99d19dd3a browser: stubs for experiment editors 2016-05-07 12:53:37 +02:00
0c74034f4d browser: tiny simplification 2016-05-07 12:53:37 +02:00
2b506a3c4b examples/photon_histogram: delay after count() 2016-05-07 18:28:07 +08:00
2b447055e5 lwip/liteethif: cleanup, drop frames above MTU (#398) 2016-05-07 17:42:22 +08:00
ccdfa1eff3 examples/photon_histogram: integers 2016-05-07 17:40:44 +08:00
dec323b097 gui/applets: catch duplicate applet UIDs (#430) 2016-05-07 11:47:17 +08:00
bcfb01bc7e gui: set application name in Gnome task switcher
Non-hacky suggestions welcome.
2016-05-06 17:23:44 +08:00
597d7c389e dashboard: support reloading arguments from HDF5 2016-05-05 00:51:30 +08:00
c50555e11c worker: use unix time for HDF5 start_time 2016-05-03 21:29:54 +08:00
7976127f6c examples/transport: add slack between experiments/after count() 2016-05-03 10:42:12 +02:00
90e678a442 gateware/nist_qc2: increase DDS bus drive strength. Closes #421 2016-05-03 16:29:38 +08: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
ff721ff136 Revert "lwip: set MTU to 9000 to support jumbo frames"
This reverts commit dbbd11d798.

Breaks more than it fixes.
2016-04-30 08:20:47 +02:00
de73bd1998 gui/moninj: sort by channel. Closes #413 2016-04-30 10:46:56 +08:00
dbbd11d798 lwip: set MTU to 9000 to support jumbo frames 2016-04-30 00:30:24 +08:00
fc4effb91d update logo 2016-04-30 00:30:24 +08:00
9707981c07 targets/kc705: fix default -H option 2016-04-30 00:30:24 +08:00
whitequark
f7d83e9bdf compiler: make kernel_invariant an instance, not class, property.
Fixes #409.
2016-04-29 13:06:11 +00:00
434ad67268 doc/environment: datasets readonly in build 2016-04-27 01:43:55 +08:00
whitequark
aa0882a06f embedding: ignore empty lines, like annotations, before kernel functions.
Fixes #363.
2016-04-26 02:25:08 +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
063639662e applets: also accept '/' as dataset path separator for completion 2016-04-25 00:04:40 +08:00
e91961fbae applets: dataset name completion 2016-04-24 23:51:55 +08:00
ec5eca0111 pyon: no float128 on windows 2016-04-24 15:44:48 +02:00
aee4859982 influxdb: fix numpy scalar bool, uints, str
* use types from the numpy hierarchy because e.g. np.issubtype(np.uint64, int) == False
* streamline influxdb formatting
* tested with influxdb 0.12
2016-04-24 15:15:16 +02:00
a0d2dab594 test/pyon: arrays and complex types 2016-04-24 14:27:24 +02:00
22946a0c2f pyon: complex types 2016-04-24 14:24:41 +02:00
86681dccff influxdb: use queue insertion time 2016-04-24 13:11:46 +02:00
aadcf0fe98 influxdb: consistency is gone 2016-04-24 12:38:47 +02:00
6c5382d43f influxdb: ms precision
* better compression
* we don't timestamp the change any better (network, queue, http)
2016-04-24 12:36:00 +02:00
06b8666a53 influxdb: just strip() response 2016-04-24 12:35:30 +02:00
3cfef4264b frontend: upper-case positional arguments in help messages 2016-04-22 16:33:44 +08:00
1dde911618 browser: dump tree header, fix root path setting 2016-04-21 21:14:22 +02:00
whitequark
5cccdcaad6 coredevice: deserialize int64(width=64) as int(width=64), not host_int.
Fixes #402.
2016-04-21 18:59:54 +00:00
9a01d38439 browser: cleanup late select, align options with variables 2016-04-20 19:16:19 +02:00
3578ba17a3 browser: zommable file icons 2016-04-20 18:11:04 +02:00
7be3ffe79f scanwidget: spelling 2016-04-20 16:29:39 +02:00
c9daa50591 browser: PATH metavar 2016-04-20 16:23:47 +02:00
89772c6461 browser: resize-adjust list 2016-04-20 16:05:12 +02:00
2f2461854f browser: use activated 2016-04-20 15:39:23 +02:00
856706188f browser: be arrogant re changing state dump formats 2016-04-20 13:57:12 +02:00
3d393e4654 browser: add root dir option, load only one file on restore 2016-04-20 13:46:03 +02:00
40b47b8440 browser: robustify loading 2016-04-20 13:20:57 +02:00
5ebdd5c106 browser: save/restore rootIndex 2016-04-20 13:20:57 +02:00
0b1b99be8a browser: double click 2016-04-20 13:20:57 +02:00
ba24bbc8ed browser: expid from h5 2016-04-20 13:20:57 +02:00
686f670a3c browser: redo tree/list models 2016-04-20 13:20:57 +02:00
f09bfa258d Revert "browser: simplify and fix state restore"
This reverts commit b00089c3d3.
2016-04-20 13:20:57 +02:00
1f92e034da Revert "browser: various fixes, handle startup path, connect activated"
This reverts commit c80510287b.
2016-04-20 13:20:33 +02:00
c80510287b browser: various fixes, handle startup path, connect activated 2016-04-20 18:25:43 +08:00
b00089c3d3 browser: simplify and fix state restore 2016-04-20 12:07:08 +08:00
0cf6df1933 master/experiments: log more details about experiment name conflicts 2016-04-16 21:36:21 +08:00
b74aa12351 master/worker_db: rethrow DeviceError exception with device name on device creation failure. Closes #396 2016-04-16 19:55:08 +08:00
caf774579a environment: refactor 2016-04-16 19:31:07 +08:00
12a8c76df9 environment,worker: remove enable_processors 2016-04-16 14:21:01 +08:00
dc44aad411 environment: make NumberValue return integers when appropriate. Closes #397 2016-04-16 14:20:45 +08:00
d4ba525c9d gui,browser: save state in home folder 2016-04-15 19:05:12 +08:00
e1a229028d test/analyzer: clear analyzer buffer after IO init 2016-04-15 01:18:36 +08:00
848c86e8a4 master: group results by hour, not by minute 2016-04-15 01:13:53 +08:00
511913230f test_analyzer: loop_out.off() 2016-04-14 22:57:16 +08:00
b36eded2e1 remote_exec_processing: style 2016-04-14 19:06:01 +08:00
4a297f0c42 browser: s/results/files/ 2016-04-14 17:55:44 +08:00
212ee8ca35 gateware/nist_qc2: substitute FMC 2016-04-14 01:02:34 +08:00
dhslichter
f395a630e0 Updated qc2 pinouts for SPI and 2x DDS bus, update docs 2016-04-13 18:38:34 +08:00
5788c02a10 examples: move pdq2 frame selects away from TTLInOut ttl3 2016-04-12 19:41:06 +08:00
d42ef46471 test: set inputs to input(), should close #383 2016-04-12 18:17:53 +08:00
1f50b3428e coredevice: automatically close on pause 2016-04-12 15:46:21 +08:00
437b37b158 master/worker: pause/resume devices 2016-04-12 15:45:53 +08:00
3c70bc40a4 master/worker_db: add pause_devices and resume_devices 2016-04-12 15:45:30 +08:00
0cca2bbef6 artiq_run: style 2016-04-12 15:16:48 +08:00
3134106a11 gui/models: handle Qt calling DictSyncTreeSepModel.index with garbage inputs. Closes #388 2016-04-11 20:11:22 +08:00
7d590afd73 dashboard/moninj: use ephemeral UDP port 2016-04-11 18:54:25 +08:00
dbba41b042 dashboard/moninj: fix windows problems 2016-04-11 18:49:57 +08:00
d9e918be49 dashboard/moninj: use thread instead of asyncio UDP (#39) 2016-04-11 18:09:41 +08:00
1690cb11b3 dashboard/moninj: remove debug prints 2016-04-11 17:17:20 +08:00
5e5f94a0f8 browser: WIP for experiment replay 2016-04-10 20:07:46 +08:00
6c200b1418 browser: make results a dock again 2016-04-10 16:29:29 +08:00
cc77d5b791 ipython notebook example: datasets subgroup 2016-04-08 12:21:26 +08:00
01f2b6731c browser: robustify hdf5 read 2016-04-08 11:54:49 +08:00
6773d9e734 thumbnail: add example 2016-04-08 11:49:20 +08:00
88495f2ea9 browser: use thumbnail dataset 2016-04-08 11:44:37 +08:00
30d557a4f8 worker: run experiment in output directory 2016-04-08 10:53:13 +08:00
1ae8b8ffd1 worker_impl: save expid, rid, start_time 2016-04-08 10:21:53 +08:00
de002ac811 worker_db: factor get_output_prefix() 2016-04-08 10:21:53 +08:00
7205985f69 applets: style 2016-04-08 10:21:49 +08:00
38e225d053 applets/simple: fix error msg, style 2016-04-08 10:21:49 +08:00
37bcd5ab7e plot_xy: fix errorbar plot 2016-04-08 10:21:49 +08:00
3e6a8a20c3 plot_xy: un-randomize the fit plot 2016-04-08 10:21:49 +08:00
d6beec1a55 dashboard: allow more than 99 scan points 2016-04-08 10:21:49 +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
3472e1abd3 browser: rm mdi area 2016-04-07 20:22:06 +08:00
46273455c5 browser: use fresh models 2016-04-07 20:18:21 +08:00
9685771275 browser: link list and tree 2016-04-07 20:18:21 +08:00
d84bcfddbe browser: use suffix for thumbnails 2016-04-07 20:18:21 +08:00
762e0400c0 browser: handle only known errors, cleanup 2016-04-07 20:18:21 +08:00
506b5ec4b0 browser: add missing __init__.py 2016-04-07 20:02:44 +08:00
whitequark
12d6f1d963 Commit missing parts of bb064c67a. 2016-04-06 23:46:19 +00:00
whitequark
bb064c67a9 runtime: add kernel-accessible sqrt.
Fixes #382.
2016-04-06 23:17:42 +00:00
whitequark
9cc9e8b276 embedding: s/kernel_constant_attributes/kernel_invariants/g
Requested in #359.
2016-04-06 22:38:31 +00:00
eb68ab9ad0 doc: remote execution 2016-04-06 19:13:41 +08:00
364e3d48ab applets/TitleApplet: support hierarchical datasets in titles 2016-04-06 17:21:35 +08:00
356afb045c applets: support title for histogram and XY. Closes #376 2016-04-06 17:08:38 +08:00
485f82b53b applets/simple: add TitleApplet (#376) 2016-04-06 17:02:57 +08:00
f530815305 gui/applets: use templates instead of formats 2016-04-06 17:02:26 +08:00
7e2e182315 put dashboard-specific files in separate directory 2016-04-06 15:45:02 +08:00
1d94cfd8ed gui: save/restore geometry of applets when they are disabled/enabled. Closes #375 2016-04-06 15:18:21 +08:00
04d4067e7f gui/state: add debug logging 2016-04-06 15:14:33 +08:00
73795ff788 test_rtio: integer division 2016-04-06 02:26:20 +08:00
1a04cc0c24 browser: add thumbnail icon provider 2016-04-06 02:01:25 +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
1f152bceb2 browser: own package, own datasets dock 2016-04-05 18:50:29 +08:00
1814f12152 gui/datasets: rm unused imports/style 2016-04-05 18:50:29 +08:00
fc524961b2 dashboard/moninj: fancy level setting and layout improvements. Closes #163 2016-04-05 18:38:05 +08:00
aaa81a63d1 browser: use LocalModelManager, make the 'explorer' the central widget 2016-04-05 17:22:16 +08:00
4edfd6caa4 qui/models: add LocalModelManager 2016-04-05 17:22:16 +08:00
826d529756 gui/results: add QListView 2016-04-05 17:22:16 +08:00
670e8907a5 artiq_browser: load from hdf5 2016-04-05 17:22:16 +08:00
fa63637a2e gui/browser: local model manager 2016-04-05 17:22:16 +08:00
91a362c898 add artiq_browser 2016-04-05 17:22:16 +08:00
4759ea337b worker_impl: style 2016-04-05 17:22:16 +08:00
05c61465e0 worker: trust that h5py encodes strings 2016-04-05 17:18:15 +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
4e7b004a4e worker, hdf5: move datasets to subgroup 2016-04-05 17:17:18 +08:00
1ff01a43ff artiq_flash: clear error message when bin directory is absent 2016-04-05 16:09:41 +08:00
ed1c368e73 gateware: name targets consistently. Closes #290 2016-04-05 16:07:29 +08:00
1459b393a0 examples/remote_exec_controller: implement ping 2016-04-05 13:59:54 +08:00
affe4d45aa ship examples with package 2016-04-05 13:59:39 +08:00
2dfc1a8d17 gui/explorer: display filenames and classes in tooltips. Closes #371 2016-04-05 13:26:00 +08:00
d9b2968426 gui/models/DictSyncTreeSepModel: support tooltips 2016-04-05 13:25:14 +08:00
whitequark
14caa2713c test_pulse_rate_dds: adjust bounds. 2016-04-05 01:52:34 +00:00
whitequark
8b1c5e3a26 llvm_ir_generator: add fast-math flags to fcmp.
This is allowed in 3.8.
2016-04-05 00:48:41 +00:00
whitequark
ad83b092fa llvm_ir_generator: change !{→unconditionally_}dereferenceable.
Since LLVM 3.8, !dereferenceable is weaker, so we introduce
!unconditionally_dereferenceable (http://reviews.llvm.org/D18738)
to regain its functionality.
2016-04-05 00:48:41 +00:00
whitequark
72b952e850 llvm_ir_generator: fix DICompileUnit.language. 2016-04-05 00:48:41 +00:00
d095d481ff gui.models: style 2016-04-04 23:38:56 +08:00
3efb841557 client: add --async option to scan-repository, recommend usage in git post-receive 2016-04-04 22:17:39 +08:00
7453d85d5e GUI -> dashboard 2016-04-04 22:12:45 +08:00
aa61c29efb transfer Python builtin exceptions over pc_rpc and master/worker 2016-04-04 22:02:42 +08:00
f860548396 protocols/pyon: minor cleanup 2016-04-04 21:34:37 +08:00
4ce00e3b7a protocols/remote_exec: add connect_global_rpc 2016-04-04 19:09:23 +08:00
059836c591 protocols/remote_exec: give access to controller_initial_namespace 2016-04-04 19:09:03 +08:00
69516136c4 protocols/pc_rpc: add get_local_host to clients 2016-04-04 19:07:08 +08:00
whitequark
a57aabb3ea compiler: purge generated functions from backtraces. 2016-04-02 18:29:36 +00:00
whitequark
712e16b79e ttl: mark constant attributes for TTL{In,InOut,ClockGen}. 2016-04-02 18:20:51 +00:00
whitequark
a1e98a4437 llvm_ir_generator: add TBAA metadata for @now. 2016-04-02 18:19:14 +00:00
whitequark
b1f371e578 llvm_ir_generator: update debug info emission for LLVM 3.8. 2016-04-02 18:05:40 +00:00
whitequark
132b55d6be coredevice: format backtrace RA as +0xN, not 0xN.
The absolute address is somewhere in the 0x4000000 range; the one
that is displayed is an offset from the shared object base.
2016-04-02 18:05:40 +00:00
774ecceaba master/worker_impl: use ParentDatasetDB in examine mode. Closes #368 2016-04-02 23:06:14 +08:00
a53d32c24e master: always expose full set of worker handlers (#368) 2016-04-02 23:05:16 +08:00
667aca8a1c gui/experiment: fix recompute argument error handling 2016-04-02 23:03:06 +08:00
1a288e07cc protocols/remote_exec: simplify, use global namespace 2016-04-02 22:44:27 +08:00
whitequark
df8018f0be compiler: emit verbose assembly via ARTIQ_DUMP_ASM. 2016-04-01 09:34:51 +00:00
whitequark
d9dd7df3b2 compiler: add analysis passes from TargetMachine.
This doesn't have any effect right now, but is the right thing to do.
2016-04-01 09:34:36 +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
whitequark
2c04979727 compiler: update for LLVM 3.7. 2016-03-31 11:23:47 +00:00
whitequark
b8bd344e54 compiler: use correct data layout. 2016-03-31 11:22:29 +00:00
0173031487 test/PulseRateDDS: run more iterations 2016-03-31 16:04:55 +08:00
3c9e4074d5 runtime: fix ddstest help (#365) 2016-03-31 10:27:18 +08:00
29a76bb02d influxdb: simplify and document pattern matching. Closes #166 2016-03-31 00:28:28 +08:00
deb9a60ca3 gui: setParent(None) before deleteLater() to remove dock appears unnecessary and causes memory corruption on Windows. Closes #362 2016-03-30 11:40:00 +08:00
059aa2f83e gui: do 60114447 properly 2016-03-30 01:47:50 +08:00
010c68f0a1 Merge branch 'master' of github.com:m-labs/artiq 2016-03-30 01:45:16 +08:00
6011444789 gui: log error and bail out on artiq_gui.pyon write failure (#360) 2016-03-30 01:45:00 +08:00
whitequark
8a908a7656 llvm_ir_generator: do not use 'coldcc' calling convention.
First, this calling convention doesn't actually exist in OR1K
and trying to use it in Asserts build causes an UNREACHABLE.

Second, I tried to introduce it and it does not appear to produce
any measurable benefit: not only OR1K has a ton of CSRs but also
it is quite hard, if not realistically impossible, to produce
the kind of register pressure that would be relieved by sparing
a few more CSRs for our exception raising function calls, since
temporaries don't have to be preserved before a noreturn call
and spilling over ten registers across an exceptional edge
is not something that the code we care about would do.

Third, it produces measurable drawbacks: it inflates code size
of check:* functions by adding spills. Of course, this could be
alleviated by making __artiq_raise coldcc as well, but what's
the point anyway?
2016-03-29 15:19:46 +00:00
whitequark
586022023b llvm_ir_generator: mark loads as non-null where applicable. 2016-03-29 13:34:37 +00: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
f6b391bb4e compiler: fix ARTIQ_DUMP_ELF. 2016-03-29 13:03:49 +00:00
whitequark
a9489246a4 llvm_ir_generator: don't mark non-constant attribute loads as invariant.
Oops.
2016-03-29 13:03:49 +00:00
dc2c19f08f gui/schedule: support terminating all experiments in a pipeline. Closes #262 2016-03-29 17:34:38 +08:00
b59283f85e gui/applets: use a better default size, make minimum size proportional to font 2016-03-29 17:10:37 +08:00
b6232aea86 gui: better default layout 2016-03-29 16:59:43 +08:00
84d50c4caf environment,worker_db: mutate datasets from experiments via dedicated method instead of Notifier. Closes #345 2016-03-29 16:26:14 +08:00
a545598d4c style 2016-03-29 16:19:03 +08:00
3c09577ed0 device/thorlabs_tcube: fix port read 2016-03-29 14:39:55 +08:00
50888865e7 doc/dds: fix init timing margin 2016-03-29 12:01:32 +08:00
ce57794e7f doc: fix comment about when and how DDS init should be done. Closes #353 2016-03-29 11:10:53 +08:00
whitequark
3ed852e077 Commit missing parts of 1d8b0d46. 2016-03-28 21:44:31 +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
6f5332f892 compiler: allow flagging syscalls, providing information to optimizer.
This also fixes a crash in test_cache introduced in 1d8b0d46.
2016-03-28 19:56:56 +00:00
049bd11bd6 scanwidget: handle min, max, suffix (closes #352) 2016-03-28 16:59:49 +02:00
whitequark
1d8b0d46bc compiler: mark FFI functions as ModRef=Ref using TBAA metadata.
Fascinatingly, the fact that you can mark call instructions with
!tbaa metadata is completely undocumented. Regardless, it is true:
a !tbaa metadata for an "immutable" type will cause
AliasAnalysis::getModRefBehavior to return OnlyReadsMemory for that
call site.

Don't bother marking loads with TBAA yet since we already place
!load.invariant on them (which is as good as the TBAA "immutable"
flag) and after that we're limited by lack of !nonnull anyway.

Also, add TBAA analysis passes in our pipeline to actually engage it.
2016-03-28 02:52:15 +00:00
whitequark
418f0a5234 compiler: mark loads of kernel constant attributes as load invariant.
Also, enable LICM, since it can take advantage of this.
2016-03-28 00:44:32 +00:00
whitequark
507ad96db3 coredevice: add some kernel_constant_attributes specifications. 2016-03-28 00:06:00 +00:00
whitequark
ca7463a054 compiler: do not write back kernel constant attributes.
Fixes #322.
2016-03-28 00:05:57 +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
f81930ffd6 compiler: run IPSCCP.
This doesn't do much, only frees some registers.
2016-03-27 02:00:05 +00:00
whitequark
7213984330 compiler: raise inliner threshold to the equivalent of -O3. 2016-03-27 01:08:13 +00:00
whitequark
e75ad3d1aa compiler: extract runtime checks into separate cold functions.
This reduces register pressure as well as function size, which
favorably affects the inliner.
2016-03-27 01:02:15 +00:00
whitequark
2a210d74fb test_pulse_rate: tighten upper bound to 1500ns. 2016-03-26 22:45:24 +00:00