Re: [ARTIQ] scans and generators on core device?

2017-10-20 Thread Sébastien Bourdeauducq via ARTIQ

On Friday, October 20, 2017 12:36 AM, Slichter, Daniel H. (Fed) wrote:

Judging from the absence of replies to this email, we will not
support generators on the core device nor MultiScanManager.

My main question with this is about time efficiency -- if you were to
go to the effort to support this on the core device
Note that scans can be supported on the device with just iterators and 
not generators (as explained in the issue).


Sébastien
___
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq


Re: [ARTIQ] scans and generators on core device?

2017-10-20 Thread Peter Zotov via ARTIQ

On 2017-10-19 16:36, Slichter, Daniel H. (Fed) via ARTIQ wrote:

Judging from the absence of replies to this email, we will not support
generators on the core device nor MultiScanManager.


My main question with this is about time efficiency -- if you were to
go to the effort to support this on the core device, will it end up
taking a lot longer (i.e. processor slack) than the current way of
just passing a list to the kernel which it can step through to scan
something?


Slightly slower for integer-only (after optimization) scans, and
quite a bit slower for FP scans, than just traversing the list.
However, compiling and loading very large lists as parts of kernels
is slow, so there's a spectrum from 1-10 steps (unrolled list
is clearly better) to 10,000-100,000 steps (generators are
clearly better), with some mixture of these in between.

--
Peter Zotov
___
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq


Re: [ARTIQ] scans and generators on core device?

2017-10-19 Thread Slichter, Daniel H. (Fed) via ARTIQ
> Judging from the absence of replies to this email, we will not support
> generators on the core device nor MultiScanManager.

My main question with this is about time efficiency -- if you were to go to the 
effort to support this on the core device, will it end up taking a lot longer 
(i.e. processor slack) than the current way of just passing a list to the 
kernel which it can step through to scan something?  I'd say this feature would 
enable kernel code to be written a little more "Pythonically", but if that 
comes at a serious performance cost that's not what we want to do.  My personal 
feeling for our experiments is that code executing on the core device should be 
limited to fairly low-level stuff, and so lists etc are fine, especially if the 
computation of list values on the fly with generators is computationally 
slow/inefficient on the core device.  Similarly with the MultiScanManager, just 
having the scan unrolled and flattened to 1D at compile time is currently 
suitable for our purposes.  It may make sense to revisit these topics more in 
the future, as needs/applications change.

Best,
Daniel
___
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq


Re: [ARTIQ] scans and generators on core device?

2017-10-18 Thread Sébastien Bourdeauducq via ARTIQ

Hi,

Judging from the absence of replies to this email, we will not support 
generators on the core device nor MultiScanManager.


Sébastien


On Tuesday, October 10, 2017 02:34 PM, Sébastien Bourdeauducq wrote:

Hi,

to implement scans on the core device 
(https://github.com/m-labs/artiq/issues/118) in the best way possible, 
we need some information about how ARTIQ is used and will be used:
* are Python generators (i.e. using "yield") something that you know 
about, use, and would like to see supported inside kernels?

* are you using MultiScanManager?

Sébastien

___
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq


[ARTIQ] scans and generators on core device?

2017-10-10 Thread Sébastien Bourdeauducq via ARTIQ

Hi,

to implement scans on the core device 
(https://github.com/m-labs/artiq/issues/118) in the best way possible, 
we need some information about how ARTIQ is used and will be used:
* are Python generators (i.e. using "yield") something that you know 
about, use, and would like to see supported inside kernels?

* are you using MultiScanManager?

Sébastien
___
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq