Closed nurullahsevim closed 3 months ago
Hi,
Are you using XLA? If so, it would explain why you get this error, as Scene.coverage_map()
does not work with XLA.
Thanks for the response. I did not explicitly use XLA. Maybe it is activated in Sionna library? How can I disable it?
Sionna does not activate XLA. Could you try with the latest version of Sionna (0.16.0)?
Upgraded Sionna to 0.16 but I got the same error. I tried to put sionna.Config.xla_compat = False
before coverage map function but it did not solve the issue.
Could you share a minimal code snippet that reproduces the issue?
Sure. I get the error after executing the last line. The execution runs for a while but outputs an error eventually.
import sionna
import tensorflow as tf
import matplotlib.pyplot as plt
import numpy as np
import time
from sionna.rt import load_scene, Transmitter, Receiver, PlanarArray, Camera
from sionna.channel import cir_to_ofdm_channel, subcarrier_frequencies, OFDMChannel, ApplyOFDMChannel, CIRDataset
from sionna.nr import PUSCHConfig, PUSCHTransmitter, PUSCHReceiver
from sionna.utils import compute_ber, ebnodb2no, PlotBER
from sionna.ofdm import KBestDetector, LinearDetector
from sionna.mimo import StreamManagement
gpus = tf.config.list_physical_devices('GPU')
if gpus:
try:
tf.config.experimental.set_memory_growth(gpus[0], True)
except RuntimeError as e:
print(e)
tf.get_logger().setLevel('ERROR')
tf.random.set_seed(1) # Set global random seed for reproducibility
scene = load_scene(sionna.rt.scene.munich)
scene.preview()
scene.tx_array = PlanarArray(num_rows=8,
num_cols=2,
vertical_spacing=0.7,
horizontal_spacing=0.5,
pattern="tr38901",
polarization="VH")
scene.rx_array = PlanarArray(num_rows=1,
num_cols=1,
vertical_spacing=0.5,
horizontal_spacing=0.5,
pattern="dipole",
polarization="cross")
tx = Transmitter(name="tx",
position=[8.5,21,27],
orientation=[0,0,0])
scene.add(tx)
rx = Receiver(name="rx",
position=[45,90,1.5],
orientation=[0,0,0])
scene.add(rx)
tx.look_at(rx)
print(scene.transmitters)
print(scene.receivers)
paths = scene.compute_paths(max_depth=5,
num_samples=1e6)
Hi, I cannot reproduce this error.
Could you describe your full system configuration (OS, GPU, TF, Sionna, Python, etc.)?
There is no coverage computation in this code snippet. You get the error in the compute_path
call?
Could you upgrade to TF 2.13?
Yeah, actually it was also giving the same error in compute_path
call. However, I somehow solved the issue. When I copied the "nvvm" folder from CUDA/vx.x to my working directory, I stopped getting the error. But, I have still no idea what the problem is. I am sure that I have cuda directory in the Path variables. If you have any idea on that (like what causes the problem) and a better solution than my work-around I will be glad. Otherwise I can close the issue.
Closing as it appears to be an issue with the local CUDA installation.
Every time I try to get a coverage map, I get the following error: UnknownError: {{function_node wrappedFloorModdevice/job:localhost/replica:0/task:0/device:GPU:0}} JIT compilation failed. [Op:FloorMod] I am on Windows Native, using TF 2.10.1, Sionna 0.14.
Things work ok when I try to compute paths. I only observed this problem with coverage_map() function.
And this is the full error tree: