661b9bfbfa
tools/short_format: increase max string length
2015-10-18 13:32:29 +08:00
d7b41207da
tools/short_format: display booleans directly
2015-10-18 13:31:36 +08:00
5c4ed7a9bd
fix imports
2015-10-12 19:46:14 +08:00
22bffa98b5
client: use short_format in dataset display
2015-10-12 18:10:58 +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
125503139e
remove workaround for Python bug in asyncio process.wait(). Requires Python 3.5. Closes #58
2015-10-03 14:33:18 +08:00
a059ebf36a
tools/get_experiment: do not autodetect experiments starting with _
2015-09-01 13:21:03 -06:00
06badd1dc1
scheduler: refactor, fix pipeline hazards
2015-08-10 21:58:11 +08:00
f81b2eba43
master: better repo scan error handling
2015-08-08 23:36:12 +08:00
e078dabd3c
tools/TaskObject: do not suppress exceptions raised by terminating task
2015-08-06 22:14:49 +08:00
bd2bd68a54
gui,client: do now show arguments
2015-07-22 05:47:14 +08:00
32d141f5ac
refactor ddb/pdb/rdb
2015-07-13 22:21:32 +02:00
Yann Sionneau
0109821078
tools: change asyncio_process_wait_timeout to handle cases where process.stdout is None. close #56
2015-07-07 19:30:36 +02:00
9f9079589e
gui: send monitor requests to core device
2015-06-05 14:52:41 +08:00
a6a476593e
worker: wait for process termination
...
This prevents stray SIGCHLDs from crashing the program e.g. if the asyncio event loop is closed before the process actually terminates.
2015-06-05 00:37:26 +08:00
737f6d4485
scheduler: support pipeline flush
2015-05-28 17:20:58 +08:00
a670b9f660
tools/asyncio_wait_or_cancel: wait for cancellation
2015-05-21 16:41:27 +08:00
b74b8d5826
Scheduling TNG
2015-05-17 16:11:00 +08:00
5e046dc5ce
artiq_run: move parse_arguments and get_experiment to tools
2015-04-07 13:04:47 +08:00
bd145bbabc
use %(default) in argparse
2015-03-23 20:02:14 +01:00
d5795fd619
master: watchdog support
...
Introduces a watchdog context manager to use in the experiment code that
terminates the process with an error if it times out. The syntax is:
with self.scheduler.watchdog(20*s):
...
Watchdogs timers are implemented by the master process (and the worker
communicates the necessary information about them) so that they can be
enforced even if the worker crashes. They can be nested arbitrarily.
During yields, all watchdog timers for the yielding worker are
suspended [TODO]. Setting up watchdogs is not supported in kernels,
however, a kernel can be called within watchdog contexts (and terminating
the worker will terminate the kernel [TODO]).
It is possible to implement a heartbeat mechanism using a watchdog, e.g.:
for i in range(...):
with self.scheduler.watchdog(...):
....
Crashes/freezes within the iterator or the loop management would not be
detected, but they should be rare enough.
2015-03-11 16:43:14 +01:00
0abd41a04a
pc_rpc: trace support in server
2015-02-27 00:17:11 -07:00
d484b3a548
tools: add missing import
2015-02-18 08:52:31 -07:00
3543dc30c7
Revert "tools/file_import: use python 3.4 importlib API"
...
This reverts commit 614a96a3d7
.
Conflicts:
artiq/tools.py
2015-02-18 08:51:44 -07:00
170a626c76
tools/file_import: support import of modules importing from their directory
2015-02-17 16:13:00 -07:00
614a96a3d7
tools/file_import: use python 3.4 importlib API
2015-02-17 13:07:09 -07:00
17596f4ad8
tools,frontend: print default ports
2015-02-15 14:58:57 -07:00
79a5d8a12a
tools,frontend: common network arguments
2015-02-15 14:55:43 -07:00
0ba07e67b8
artiq/tools/verbosity_args: add help
2015-02-04 19:09:37 +08:00
Yann Sionneau
526887140d
Set WARNING as default log level + update documentation
2015-01-30 19:04:04 +08:00
939236a1b5
tools: fix logging config
2015-01-29 18:47:07 +08:00
Yann Sionneau
5ba7218cc1
Factorize argparser for debug level
2015-01-29 10:07:12 +08:00
3e22fe86b5
reorganize files as per discussion with Robert
2015-01-17 19:38:20 +08:00