gem5-users@gem5.org

The gem5 Users mailing list

View all threads

How to use Gem5?

A
Anamika
Thu, Dec 21, 2023 5:32 PM

Gem5 is primarily a computer architecture simulator. Can I use it to
simulate it for specific application wiz. encode a 4k video file (HEVC) as
input data to a LDPC encoder, followed by MQAM modulation for energy
consumption estimation? If Yes, where to start? How to create the
SimObjects?

Set up video encoding components class HEVCEncoder(SimObject):

pass

class LDPC(SimObject):
pass
class MQAMModulator(SimObject):
pass

Thank You, Regards
Anamika

Gem5 is primarily a computer architecture simulator. Can I use it to simulate it for specific application wiz. encode a 4k video file (HEVC) as input data to a LDPC encoder, followed by MQAM modulation for energy consumption estimation? If Yes, where to start? How to create the SimObjects? # Set up video encoding components class HEVCEncoder(SimObject): pass class LDPC(SimObject): pass class MQAMModulator(SimObject): pass Thank You, Regards Anamika
HN
Hoa Nguyen
Fri, Dec 22, 2023 12:18 AM

Hi Anamika,

Hey there. The se.py script has been depreciated in favor of the new gem5
standard library. You can find examples of using the standard library,
https://github.com/gem5/gem5/tree/stable/configs/example/gem5_library.

The internal of the standard library (how components are constructed and
connected) are here,
https://github.com/gem5/gem5/tree/stable/src/python/gem5.

Regarding developing a simulation component (or a SimObject), which is a
media decoder accelerator in your case, you can start from learning gem5
here,
https://www.gem5.org/documentation/learning_gem5/part2/helloobject/, or the
tutorial from 2022 gem5 bootcamp, https://youtube.com/watch?v=OcXA1D4b1RA.

At a high level, every SimObject has a Python class that is binded to a C++
class. The Python interface provides a way for you to input the parameters
to your component and to connect SimObjects. You'd need to implement the
C++ part, which performs the functionalities of the SimObject, like
decoding a stream of bits.

Regards,
Hoa Nguyen

On Thu, Dec 21, 2023, 09:36 Anamika via gem5-users gem5-users@gem5.org
wrote:

Gem5 is primarily a computer architecture simulator. Can I use it to
simulate it for specific application wiz. encode a 4k video file (HEVC) as
input data to a LDPC encoder, followed by MQAM modulation for energy
consumption estimation? If Yes, where to start? How to create the
SimObjects?

Set up video encoding components class HEVCEncoder(SimObject):

 pass

class LDPC(SimObject):
pass
class MQAMModulator(SimObject):
pass

Thank You, Regards
Anamika


gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-leave@gem5.org

Hi Anamika, Hey there. The se.py script has been depreciated in favor of the new gem5 standard library. You can find examples of using the standard library, https://github.com/gem5/gem5/tree/stable/configs/example/gem5_library. The internal of the standard library (how components are constructed and connected) are here, https://github.com/gem5/gem5/tree/stable/src/python/gem5. Regarding developing a simulation component (or a SimObject), which is a media decoder accelerator in your case, you can start from learning gem5 here, https://www.gem5.org/documentation/learning_gem5/part2/helloobject/, or the tutorial from 2022 gem5 bootcamp, https://youtube.com/watch?v=OcXA1D4b1RA. At a high level, every SimObject has a Python class that is binded to a C++ class. The Python interface provides a way for you to input the parameters to your component and to connect SimObjects. You'd need to implement the C++ part, which performs the functionalities of the SimObject, like decoding a stream of bits. Regards, Hoa Nguyen On Thu, Dec 21, 2023, 09:36 Anamika via gem5-users <gem5-users@gem5.org> wrote: > Gem5 is primarily a computer architecture simulator. Can I use it to > simulate it for specific application wiz. encode a 4k video file (HEVC) as > input data to a LDPC encoder, followed by MQAM modulation for energy > consumption estimation? If Yes, where to start? How to create the > SimObjects? > > # Set up video encoding components class HEVCEncoder(SimObject): > pass > class LDPC(SimObject): > pass > class MQAMModulator(SimObject): > pass > > Thank You, Regards > Anamika > _______________________________________________ > gem5-users mailing list -- gem5-users@gem5.org > To unsubscribe send an email to gem5-users-leave@gem5.org >
A
Anamika
Sun, Dec 24, 2023 8:30 PM

Hi,

I want to compute the power consumption of the processor, while encoding
data. (power consumed by an specific application like encoder/decoder)

I have python script for the encoder. (Creating the SimObject is yet a task
for me, I am going through the video available on YouTube for creating
theSimObject.)

The stats and output are stored in m5out stats.txt file.
But I don't know how power will be computed.
What should be the command I should give to run my script?

Kindly help.
Thank you...

On Fri, Dec 22, 2023, 05:48 Hoa Nguyen hoanguyen@ucdavis.edu wrote:

Hi Anamika,

Hey there. The se.py script has been depreciated in favor of the new gem5
standard library. You can find examples of using the standard library,
https://github.com/gem5/gem5/tree/stable/configs/example/gem5_library.

The internal of the standard library (how components are constructed and
connected) are here,
https://github.com/gem5/gem5/tree/stable/src/python/gem5.

Regarding developing a simulation component (or a SimObject), which is a
media decoder accelerator in your case, you can start from learning gem5
here,
https://www.gem5.org/documentation/learning_gem5/part2/helloobject/, or
the tutorial from 2022 gem5 bootcamp,
https://youtube.com/watch?v=OcXA1D4b1RA.

At a high level, every SimObject has a Python class that is binded to a
C++ class. The Python interface provides a way for you to input the
parameters to your component and to connect SimObjects. You'd need to
implement the C++ part, which performs the functionalities of the
SimObject, like decoding a stream of bits.

Regards,
Hoa Nguyen

On Thu, Dec 21, 2023, 09:36 Anamika via gem5-users gem5-users@gem5.org
wrote:

Gem5 is primarily a computer architecture simulator. Can I use it to
simulate it for specific application wiz. encode a 4k video file (HEVC) as
input data to a LDPC encoder, followed by MQAM modulation for energy
consumption estimation? If Yes, where to start? How to create the
SimObjects?

Set up video encoding components class HEVCEncoder(SimObject):

 pass

class LDPC(SimObject):
pass
class MQAMModulator(SimObject):
pass

Thank You, Regards
Anamika


gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-leave@gem5.org

Hi, I want to compute the power consumption of the processor, while encoding data. (power consumed by an specific application like encoder/decoder) I have python script for the encoder. (Creating the SimObject is yet a task for me, I am going through the video available on YouTube for creating theSimObject.) The stats and output are stored in m5out stats.txt file. But I don't know how power will be computed. What should be the command I should give to run my script? Kindly help. Thank you... On Fri, Dec 22, 2023, 05:48 Hoa Nguyen <hoanguyen@ucdavis.edu> wrote: > Hi Anamika, > > Hey there. The se.py script has been depreciated in favor of the new gem5 > standard library. You can find examples of using the standard library, > https://github.com/gem5/gem5/tree/stable/configs/example/gem5_library. > > The internal of the standard library (how components are constructed and > connected) are here, > https://github.com/gem5/gem5/tree/stable/src/python/gem5. > > Regarding developing a simulation component (or a SimObject), which is a > media decoder accelerator in your case, you can start from learning gem5 > here, > https://www.gem5.org/documentation/learning_gem5/part2/helloobject/, or > the tutorial from 2022 gem5 bootcamp, > https://youtube.com/watch?v=OcXA1D4b1RA. > > At a high level, every SimObject has a Python class that is binded to a > C++ class. The Python interface provides a way for you to input the > parameters to your component and to connect SimObjects. You'd need to > implement the C++ part, which performs the functionalities of the > SimObject, like decoding a stream of bits. > > Regards, > Hoa Nguyen > > On Thu, Dec 21, 2023, 09:36 Anamika via gem5-users <gem5-users@gem5.org> > wrote: > >> Gem5 is primarily a computer architecture simulator. Can I use it to >> simulate it for specific application wiz. encode a 4k video file (HEVC) as >> input data to a LDPC encoder, followed by MQAM modulation for energy >> consumption estimation? If Yes, where to start? How to create the >> SimObjects? >> >> # Set up video encoding components class HEVCEncoder(SimObject): >> pass >> class LDPC(SimObject): >> pass >> class MQAMModulator(SimObject): >> pass >> >> Thank You, Regards >> Anamika >> _______________________________________________ >> gem5-users mailing list -- gem5-users@gem5.org >> To unsubscribe send an email to gem5-users-leave@gem5.org >> >