- This topic has 19 replies, 4 voices, and was last updated 1 year, 2 months ago by Farhan.
-
AuthorPosts
-
23. March 2021 at 11:09 #14878FarhanParticipant
Hi,
I am trying to increase number of Subcarriers from 72 to 384 in Massive MIMO scenario, but it is not letting me to do so, below is my configuration:
scStr.modulation.numberOfSubcarriers = [384];
scStr.modulation.subcarrierSpacing = [15e3];
scStr.modulation.nSymbolsTotal = [14];
scStr.modulation.nGuardSymbols = [1];
scStr.modulation.samplingRate = ‘Automatic’;%% Schedule
scStr.schedule.fixedScheduleDL{1} = [‘UE1:384,UE2:UE1,UE3:UE1,UE4:UE1,UE5:UE1,UE6:UE1,UE7:UE1,UE8:UE1,UE9:UE1,UE10:UE1’];
scStr.schedule.fixedScheduleDL{2} = [‘UE11:384,UE12:UE11,UE13:UE11,UE14:UE11,UE15:UE11,UE16:UE11,UE17:UE11,UE18:UE11,UE19:UE11,UE20:UE11’];
scStr.schedule.fixedScheduleUL{1} = [‘UE1:384,UE2:UE1,UE3:UE1,UE4:UE1,UE5:UE1,UE6:UE1,UE7:UE1,UE8:UE1,UE9:UE1,UE10:UE1’];
scStr.schedule.fixedScheduleUL{2} = [‘UE11:384,UE12:UE11,UE13:UE11,UE14:UE11,UE15:UE11,UE16:UE11,UE17:UE11,UE18:UE11,UE19:UE11,UE20:UE11’];Can you please let me know where else I need to modify the code?
23. March 2021 at 13:00 #14879Stefan PratschnerKeymasterHi,
but it is not letting me to do so
can you please report the error message you get when trying to run the simulation?
best
Stefan- This reply was modified 1 year, 3 months ago by Stefan Pratschner.
23. March 2021 at 13:09 #14881FarhanParticipantWarning: For all multi-user MIMO modes the downlink schedule in the scenario files is ignored. All users
assigned to the basestation are scheduled on all available subcarriers.
> In Parameters.SimulationParameters/checkParameters (line 530)
In Parameters.SimulationParameters (line 30)
In main (line 23)
Warning: For all multi-user MIMO modes the downlink schedule in the scenario files is ignored. All users
assigned to the basestation are scheduled on all available subcarriers.
> In Parameters.SimulationParameters/checkParameters (line 530)
In Parameters.SimulationParameters (line 30)
In main (line 23)
Warning: For all multi-user MIMO modes the uplink schedule in the scenario files is ignored. All users
assigned to the basestation are scheduled to transmit on all available subcarriers.
> In Parameters.SimulationParameters/checkParameters (line 589)
In Parameters.SimulationParameters (line 30)
In main (line 23)
Warning: For all multi-user MIMO modes the uplink schedule in the scenario files is ignored. All users
assigned to the basestation are scheduled to transmit on all available subcarriers.
> In Parameters.SimulationParameters/checkParameters (line 589)
In Parameters.SimulationParameters (line 30)
In main (line 23)
The sampling rate was set to 74.880000 MHz.
Sampling rate does not match the predefined delays of the channel model!
Delay taps are changed according to (top = desired value; bottom = chosen value):
1.0e-06 *0 0.1100 0.1900 0.4100
0 0.1068 0.1870 0.4140——- Started ——-
Warning: The temporary variable signalLength will be cleared at the beginning of each iteration of the
parfor loop.
Any value assigned to it before the loop will be lost. If signalLength is used before it is assigned in
the parfor loop, a runtime error will occur.
See Parallel for Loops in MATLAB, “Temporary Variables”.
> In main (line 48)
Warning: Pilot pattern is LTE Uplink like, but not standard compliant for a number of 13 symbols per slot!
> In ChannelEstimation.PilotSymbolAidedChannelEstimation (line 167)
In Parameters.SimulationParameters/initializeLinks (line 1523)
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
Warning: Pilot pattern is LTE Uplink like, but not standard compliant for a number of 13 symbols per slot!
> In ChannelEstimation.PilotSymbolAidedChannelEstimation (line 167)
In Parameters.SimulationParameters/initializeLinks (line 1523)
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
Warning: Pilot pattern is LTE Uplink like, but not standard compliant for a number of 13 symbols per slot!
> In ChannelEstimation.PilotSymbolAidedChannelEstimation (line 167)
In Parameters.SimulationParameters/initializeLinks (line 1523)
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
Warning: Pilot pattern is LTE Uplink like, but not standard compliant for a number of 13 symbols per slot!
> In ChannelEstimation.PilotSymbolAidedChannelEstimation (line 167)
In Parameters.SimulationParameters/initializeLinks (line 1523)
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
Warning: Pilot pattern is LTE Uplink like, but not standard compliant for a number of 13 symbols per slot!
> In ChannelEstimation.PilotSymbolAidedChannelEstimation (line 167)
In Parameters.SimulationParameters/initializeLinks (line 1523)
In parallel_function>make_general_channel/channel_general (line 837)
In remoteParallelFunction (line 46)
Error using ChannelEstimation.PilotSymbolAidedChannelEstimation (line 172)
Index in position 2 is invalid. Array indices must be positive integers or logical values.Error in Parameters.SimulationParameters/initializeLinks (line 1523)
ChannelEstimator =
ChannelEstimation.PilotSymbolAidedChannelEstimation( …Error in main (line 48)
parfor iSweep = 1:length(simParams.simulation.sweepValue) % this may be ‘for’ or ‘parfor’>>
24. March 2021 at 8:06 #14882Mariam MussbahKeymasterHi,
It seems that the value for scStr.modulation.nSymbolsTotal is not compatible with the selected pilot pattern. Setting scStr.modulation.nSymbolsTotal = [15] should fix this problem.
Best,
Mariam24. March 2021 at 10:53 #14885FarhanParticipantHi Mariam,
Thanks for your reply, the problem still persist. Can you please check at your system by increasing the number of Subcarriers to a higher value?
24. March 2021 at 12:14 #14886Mariam MussbahKeymasterHi Farhan,
Do you still get the same error message or do you get a different one? What happens if you change scStr.simulation.pilotSequenceLength to 8? Do you still get the an error message?
Best,
Mariam24. March 2021 at 13:26 #14887FarhanParticipantHI Mariam,
Thanks for your reply, I have made changes as per your suggestion but I am getting this message, pasted below, I am simply trying to increase number of Subcarrier. Can you reproduce it by increasing in this Massive MIMO sceanrio:
Error using Channel.FastFading/NewRealization (line 590)
Out of memory. Type “help memory” for your options.Error in Channel.FastFading (line 231)
obj.NewRealization(0);Error in Parameters.SimulationParameters/initializeLinks (line 1613)
Links{linkX, linkY}.Channel = Channel.FastFading(
obj.modulation.samplingRate,…Error in main (line 48)
parfor iSweep = 1:length(simParams.simulation.sweepValue) % this may be ‘for’ or ‘parfor’>>
7. April 2021 at 16:16 #14909FarhanParticipantHi Mariam,
Reference above post, I have tried all possible options but got error message. what values do you suggest if I want to increase number of subcarriers in Massive MIMO Scenario which you have tested?
configuration:
scStr.modulation.numberOfSubcarriers = [?];
scStr.modulation.subcarrierSpacing = ?;
scStr.modulation.nSymbolsTotal = ?;
scStr.modulation.nGuardSymbols = ?;
scStr.modulation.samplingRate = ‘Automatic’;scStr.schedule.fixedScheduleDL{1} = [‘UE1:?,UE2:UE1,UE3:UE1,UE4:UE1,UE5:UE1,UE6:UE1,UE7:UE1,UE8:UE1,UE9:UE1,UE10:UE1’];
scStr.schedule.fixedScheduleDL{2} = [‘UE11:?,UE12:UE11,UE13:UE11,UE14:UE11,UE15:UE11,UE16:UE11,UE17:UE11,UE18:UE11,UE19:UE11,UE20:UE11’];
scStr.schedule.fixedScheduleUL{1} = [‘UE1:?,UE2:UE1,UE3:UE1,UE4:UE1,UE5:UE1,UE6:UE1,UE7:UE1,UE8:UE1,UE9:UE1,UE10:UE1’];
scStr.schedule.fixedScheduleUL{2} = [‘UE11:?,UE12:UE11,UE13:UE11,UE14:UE11,UE15:UE11,UE16:UE11,UE17:UE11,UE18:UE11,UE19:UE11,UE20:UE11’];9. April 2021 at 8:17 #14910Mariam MussbahKeymasterHi Farhan,
The error message you got indicates that you computer had ran out of memory. If you can not switch to a computer with a larger memory, I would recommand the trying the following steps:
1. Change the parfor loop to a for loop
2. If you want to compare MRT and ZF but are not interested in the interference caused by the two BSs, I would recommand splitting the scenario into two scenarios. You would first simulate a scenria with one BS and 10 UE using the ZF multi-user MIMO mode and in the second scenario you change the transmission mode to MRT.
3. You can try reducing the total number of symbols per frame nSymbolsTotal.
4. If you are using FDD mode, you could deactivate the uplink and only simulate the downlink .There are many ways in which you can reduce your scenario. You need to find out what you are interested in and then reduce your scenario according to that.
Best,
Mariam10. April 2021 at 17:22 #14913FarhanParticipantHi Mariam,
Is it RAM or ROM which ran out ?
P.S: As per manual it says “distributed computing server” and “Parallel Computing Toolbox” are required for this simulator. But I am not sure If I use a licensed Parallel Computing Toolbox will I be able to run my simulation or do I need a separate license for “distributed computing server”. I searched but I am no sure if “distributed computing server” is even a toolbox or something else. Can you please clarify toolbox requirements.
Regards,
Farhan- This reply was modified 1 year, 2 months ago by Farhan.
12. April 2021 at 12:05 #14915Mariam MussbahKeymasterHi Farhan,
You are running out of RAM.
The usage of Parallel Computing and the Distributed Computing toolboxes is optional for optimal running, and therefore are not required in order to run the simulator.
Best,
Mariam12. April 2021 at 12:48 #14916FarhanParticipantHi Mariam,
Thanks for the clarification. As Parallel Computing Toolbox is optional for Link Level Simualtor, I Changed the parfor loop to a for loop but it is giving following error message:
‘parcluster’ requires Parallel Computing Toolbox.
Error in main (line 40) myCluster = parcluster('local');
When I change parcluster to cluster it is giving following error message:
Error in main (line 40) myCluster = cluster('local');
What else I need to change in order to run it without Parallel Computing Toolbox ?
- This reply was modified 1 year, 2 months ago by Farhan.
12. April 2021 at 14:05 #14918Mariam MussbahKeymasterHi Farhan,
You have to remove the following two lines
myCluster = parcluster('local'); NumWorkers = myCluster.NumWorkers;
Best,
Mariam12. April 2021 at 17:04 #14919FarhanParticipantHi,
After removing these lines it is now giving below message:
------- Started ------- Unable to resolve the name Coding.ChannelCodingComponents.CRCMEX. Error in Coding.ChannelCodingComponents.CRC.Attach (line 48) CRCAttached = Coding.ChannelCodingComponents.CRCMEX(InputBits, CRCPoly, 0); Error in Coding.ChannelCoding/encode (line 104) InputBits = Coding.ChannelCodingComponents.CRC.Attach(InputBits, obj.CRCPoly); Error in Elements.User/generateTransmitSignal (line 42) codedBits{iCodeword} = primaryLink.ChannelCoder{iCodeword}.encode(primaryLink.InputBits{iCodeword}); Error in main (line 99) UE{iUE}.generateTransmitSignal(Links);
19. April 2021 at 7:51 #14933Stefan PratschnerKeymasterDear Farhan,
the Vienna 5G LLS uses pre-compiled MEX files for channel coding and decoding. It seems as if there is a problem with these MEX files.
Which operating system are you running?
kind regards
Stefan -
AuthorPosts
- The forum ‘Vienna 5G Link Level Simulator’ is closed to new topics and replies.