Hello,I meet a problem with ARTIQ.When I use @kernel in my code the program gets stuck. However, if I do not use the @kernel , the program runs fine. When I try to retrieve the information returned by ARTIQ, I get the following error:“no setup kernel found”,"no idle kernel found".This is the full error message.
Cannot access kernel correctly.Programs get stuck when using @kernel.
Hi Kent,
Could you please provide the code you are trying to run? Additionally, it would be helpful if you could include the following information as much as possible:
- Steps to Reproduce:
- Operating System:
- ARTIQ version: (with recent versions of ARTIQ, run
artiq_client --version
) - If using Conda, output of
conda list
(please submit as a file attachment, as this tends to be long) - Hardware involved:
- Edited
fsagbuya Thanks for your reply.Here is my code.
from artiq.experiment import *
class Blink(EnvExperiment):
def build(self):
self.setattr_device("core")
@kernel
def run_core(self):
pass
def run(self):
print("run in host")
try:
self.run_core()
except:
print("core_error")
print("run in host")
①My code is a simple test. The first 'run in host' can be printed, but the second 'run in host' cannot.
②l use ARTIQ on windows.③My ARTIQ version is ARTIQ v7.8190.db79100.④Sorry,I couldn't find the option to upload a file, so I added some pictures to show my packages list.After meeting this problem, I reloaded the Artiq environment, which resulted in some packages being lost.
⑤My device is kasli 2.0 with DIO-BNC TTL,Urulul 9910 DDS,Sampler ADC and DIO-RJ45 LVDS.
Additionally, if I use a command like '$ artiq_coremgmt', the terminal will get stuck as well.So I'm wondering whether something went wrong during the self-testing state, which led to the system not being able to find any kernel, and if that's why every command related to the kernel couldn't be executed。
Finally,thank you for your reply and apologize for getting back to you so late.
- Edited
Kent It seems the issue may be due to a mismatch between the gateware and software versions. According to the first log you provided, your gateware version is 6.7
while you're using ARTIQ 7.8
. There are two options since you're using Conda:
- Upgrade the gateware (recommended).
- Use the legacy version (ARTIQ-6), which is available in Conda but deprecated.
For upgrading the gateware, you can refer to the following sections of the manual for instructions:
If you prefer to use the legacy version, you can run the following commands:
conda config --prepend channels https://conda.m-labs.hk/artiq-legacy
conda config --append channels conda-forge
conda create -n artiq-legacy artiq
Then, try running the artiq_coremgmt
command again from ARTIQ-6 environment.
ARTIQ-6 is no longer supported since the 8 release. ARTIQ-7 is the legacy version now.