Re: [ARTIQ] scans and generators on core device?
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?
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?
> 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?
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?
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