cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
joe306
Scholar
Scholar
1,871 Views
Registered: ‎12-07-2018

Is my laptop powerful enough?

Jump to solution

Hello, I have a Lenovo 300 Laptop with 8G of RAM. Will this be enough to run VMware Player and run Linux with Vivado 19.2 and Vitis?

If not, what should I look for in a new laptop that won't break my wallet?

 

Thank you,

Joe

 

0 Kudos
1 Solution

Accepted Solutions
barriet
Xilinx Employee
Xilinx Employee
1,781 Views
Registered: ‎08-13-2007

I think @watari meant TB and not GB...

My 2019.1 install on Win10 itself occupies over 35GB disk space - not counting other other temp space used during install... And it is pretty common to have multiple tool versions. Then your project builds - which can each be pretty large for big devices - depending on how many you keep/use in parallel.

I can't imagine trying to use a machine with 500GB or less from a practical perspective.

While Vivado mostly runs in memory (versus ISE which was largely pipelined file accesses), an SSD could be a benefit (at least during install - that seemed to go much faster than what I remember with a spinning disk).

Here's a few threads I had handy on computer selection:

https://forums.xilinx.com/t5/General-Technical-Discussion/Best-CPU-RAM-recommendation-for-Vivado-Logic-and-High-level/m-p/819755

https://forums.xilinx.com/t5/Installation-and-Licensing/Vivado-on-this-HP-server-A-good-idea/m-p/863655

https://forums.xilinx.com/t5/Design-Tools-Others/PC-configuration-for-the-fastest-compilation-with-Kintex-XCKU085/m-p/713072

 

there's probably a lot more...

 

Cheers,

bt

View solution in original post

24 Replies
barriet
Xilinx Employee
Xilinx Employee
1,862 Views
Registered: ‎08-13-2007

If you are still planning on targeting the ZU19 - you'll likely want more memory:

https://www.xilinx.com/products/design-tools/vivado/memory.html

I haven't seen specific recommendations for PetaLinux, SDK, or Vitis - but I suspect Vivado will use more RAM. implementation/par/route_design on these big parts can use a lot.

Disk space is another consideration... There's a few threads on here about CPU choice, etc.

joe306
Scholar
Scholar
1,856 Views
Registered: ‎12-07-2018

Thank you very much.

0 Kudos
watari
Professor
Professor
1,842 Views
Registered: ‎06-16-2013

Hi @joe306 

 

I suggest you to change HDD from 1TB to 2TB, if you use multi version Vivado and so on.

Also, as @barriet already mentioned, I suggest you to change memory size from 8GB to 32GB, if you use VM (not native) too.

 

[Modified]

Sorry. I had a typo and modified it.

 

Best regards,

0 Kudos
barriet
Xilinx Employee
Xilinx Employee
1,782 Views
Registered: ‎08-13-2007

I think @watari meant TB and not GB...

My 2019.1 install on Win10 itself occupies over 35GB disk space - not counting other other temp space used during install... And it is pretty common to have multiple tool versions. Then your project builds - which can each be pretty large for big devices - depending on how many you keep/use in parallel.

I can't imagine trying to use a machine with 500GB or less from a practical perspective.

While Vivado mostly runs in memory (versus ISE which was largely pipelined file accesses), an SSD could be a benefit (at least during install - that seemed to go much faster than what I remember with a spinning disk).

Here's a few threads I had handy on computer selection:

https://forums.xilinx.com/t5/General-Technical-Discussion/Best-CPU-RAM-recommendation-for-Vivado-Logic-and-High-level/m-p/819755

https://forums.xilinx.com/t5/Installation-and-Licensing/Vivado-on-this-HP-server-A-good-idea/m-p/863655

https://forums.xilinx.com/t5/Design-Tools-Others/PC-configuration-for-the-fastest-compilation-with-Kintex-XCKU085/m-p/713072

 

there's probably a lot more...

 

Cheers,

bt

View solution in original post

1,754 Views
Registered: ‎07-23-2019

 

@joe306 

Short answer: NO. A laptop is never powerful enough. Especially if you work with with VM where your CPUs will be split.... Best of all, and it's not a lot to ask for, honestly, is two machines. After that, a dual-boot set up with 2x 1 TB drives. VM solutions are 3rd and last in my ranking. For serious usage I'd even consider a base linux with crappy windows on a VM. 

And for CPUs, I would only consider i7 with > 16 GB RAM, preferably DDR4. That's my threshold of decency. 

How much is a PC? And how much is an engineer-hour? Speed up things by a 10% and reckon how much extra you get in 8 hours. Then reckon how long does it take to pay back that PC. I'd say a month or less.

0 Kudos
joe306
Scholar
Scholar
1,687 Views
Registered: ‎12-07-2018

Hello, thank you for responding to my message. At work I'm not doing any embedded Linux development only HDL development, so I'm trying to learn it at home. I will try your suggestions and look to get a workstation instead of a laptop. What Linux OS do you use?

Thank you very much,

Joe

0 Kudos
joe306
Scholar
Scholar
1,686 Views
Registered: ‎12-07-2018

I did a quick check on the internet and found this:

Dell Optiplex 9020 Mini Tower Desktop PC, Intel Core i7-4770-3.4 GHz, 32GB Ram, 1TB (1000GB) SSD Drive, WiFi, DVD-RW, Windows 10 Pro (Renewed)
$455.20


How about this one?

0 Kudos
1,604 Views
Registered: ‎07-23-2019

 

Sounds decent. Check the always dismissed DDR speed. Ubuntu is probably the most popular of the Linux distros, with lots of users and help. I always used it. You will probably have to stick to the host OS that is supported by the tools you want to use.

0 Kudos
joe306
Scholar
Scholar
1,589 Views
Registered: ‎12-07-2018

Hello, how about using a Laptop and have it set up for dual boot, one Windows and one Linux?

How about this one?
2019 Newest HP 17.3" HD+ SVA BrightView Notebook|Intel Core i7-8550U |24GB Memory: 16GB Intel Optane + 8GB RAM|2TB Hard Drive|DVD-Writer| HD Webcam| HD Audio|Bluetooth|Windows 10 Home|Pale Gold

Joe

0 Kudos
1,587 Views
Registered: ‎07-23-2019

I currently have a laptop with i7 and a VM with Linux and I can bear with that. 

One of the annoying things with Linux development is that you find a bug, change it and it may take 20 min to rebuild. "bitbake" is a proper name.

so a dedicated machine with all power dedicated is far better in an environment where oneself/ someone else thinks and cares about productivity.

If we talk about learning/ hobby/ spending lazy weekends, then budget and fewer things at home can be the priority

0 Kudos
gmarinkovic
Explorer
Explorer
1,046 Views
Registered: ‎01-09-2012

@joe306 , @archangel-lightworks  , @barriet  , @watari 

Since I want to buy a laptop for work, I checked various options and computer systems. Maybe this helps other colleagues as well.

We used a Xilinx design for a RFSoC as benchmark and compared the computer systems against this real life design.

The test is well described by my colleague P.B. as follows:

Test description including TCL Commands for reproducibility:

1) Download ZCU111 IPI System from xilinx.

  • rdf0471-zcu111-ipi-c-2018-2.zip

2) Open Vivado project ( Vivado 2019.1.3 ).

  • open_project <PATH>/zcu111_ipi/zcu111ipi

3) Report IP Status.

  • report_ip_status -name ip_status 

4) Upgrade IP Catalog.

  • upgrade_ip [get_ips {system_axi_smc_0 system_zynq_ultra_ps_e_0_0 system_axi_interconnect_0_0 system_ddr4_0_0 system_microblaze_0_xlconcat_0 system_util_ds_buf_0_0 system_uart2_pl_0 system_clk_wiz_0_0 system_CLK_100_0 system_system_management_wiz_0_0 system_CLK_125_0 system_FMCP_HSPC_GBTCLK0_0 system_push_buttons_5bits_0 system_FMCP_HSPC_CLK1_0 system_PMOD_OUT_0 system_SFP_SI5382_OUT_0 system_led_8bits_0 system_FMCP_HSPC_GBTCLK2_0 system_dip_switches_8bits_0 system_PMOD_IN_0 system_iic1_pl_0 system_microblaze_0_axi_periph_0 system_iic0_pl_0 system_USER_MGT_SI570_CLOCK_0 system_FMCP_HSPC_CLK0_0 system_axi_bram_ctrl_0_0 system_USER_SMA_MGT_CLOCK_0 system_SFP_SI5382_IN1_0 system_FMCP_HSPC_GBTCLK1_0 system_AMS_REF_CLK_0 system_axi_bram_ctrl_0_bram_0}] -log ip_upgrade.log

5) Reset all runs.

  • reset_runs synth_1 -quiet

6) Reset all generated output products.

  • reset_target all [get_files <PATH>/zcu111_ipi/zcu111_ipi.srcs/sources_1/bd/system/system.bd]

7) Set the maximum of threads. 

  • set_param general.maxThreads 4

Launch implementation up to write_bitstream step.

  • launch_runs impl_1 -to_step write_bitstream -jobs 8

0 Kudos
barriet
Xilinx Employee
Xilinx Employee
1,018 Views
Registered: ‎08-13-2007

@gmarinkovicIt looks like you edited your reply (or the second post) so the machine comparison information is no longer present here. Just part of the setup and not the results appear now.

But it is worth noting that if you target RFSoC Gen1 (ZU2xDR - but the situation should be the same for Gen2 or Gen3 as well), the recommended memory for Vivado alone is nearly 16GB: 
https://www.xilinx.com/products/design-tools/vivado/memory.html (Memory Recommendations)


Given modern OS memory overhead, I'd expect in practice this means a machine with 32GB of RAM or more.

0 Kudos
gmarinkovic
Explorer
Explorer
1,004 Views
Registered: ‎01-09-2012

@barriet

So lets try it again.

0 Kudos
gmarinkovic
Explorer
Explorer
1,004 Views
Registered: ‎01-09-2012

@barriet 

 

Something prevents me from publishing my post... for whatever reason... it only stores it.

 

Cheers

Goran

0 Kudos
gmarinkovic
Explorer
Explorer
943 Views
Registered: ‎01-09-2012

My original system is a laptop dating from 2012:

  • Siemens Fujitsu Lifebook E782
  • Intel® Core™ i7-3540M CPU @ 3.00GHz × 4
  • DRAM: 16 GB
  • SSD KINGSTON SH103S3480G (583ABBF0)

However, please note this type of laptop is from about 2012!

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

19.10.2020 08:46

00:01:49

impl_1

19.10.2020 10:27

00:40:20

Out-of-Context Modules Runs

19.10.2020 08:46

01:39:16

Complete Implementation

19.10.2020 08:46

02:21:25

 

So my old laptop is doing bad... then I compared the implementation time on a desktop PC:

  • Siemens Fujitsu Celsius W520 Power
  • Intel(R) Xeon(R) CPU E3-1245 V2 @ 3.40GHz, 3401 Mhz, 4 Core(s), 8 Logical Processor(s)
  • DRAM: 32 GByte, 25.6 GB/s max. data rate
  • Cache:
     Level 1 cache size: 4 x 32 KB= 128 KB 8-way set associative instruction caches. 4 x 32 KB 8-way set associative data caches
     Level 2 cache size: 4 x 256 KB = 1 MB 8-way set associative caches
     Level 3 cache size: 8 MB 16-way set associative shared cache
  • Disk Drive OCZ-Vector for the programs and WDC WD5003ABYX-50WERA1 for data

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

16.10.2020 10:05

00:01:35

impl_1

16.10.2920 10:07

00:43:03

Out-of-Context Modules Runs

16.10.2020 9:13

00:52:47

Complete Implementation

16.10.2020 9:13

01:37:25

 

A bit better. Then the question is what about a newer laptop from my colleague P.B.:

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

15.10.2020 18:42

00:01:09

impl_1

15.10.2020 18:44

00:39:21

Out-of-Context Modules Runs

15.10.2020 17:45

00:56:42

Complete Implementation

15.10.2020 18:42

01:37:12

 

Well, still not optimal. My management came up with the idea to use a server and do everything remotely. Hence I got permission to install Vivado 2019.1.3 on a new server:

  • ProLiant DL380 Gen10
  • Intel(R) Xeon(R) Gold 6152 CPU @ 2.10GHz, 2095 Mhz, 22 Core(s), 22 Logical Processor(s)
  • DRAM: 256 GB
  • HPE Logical Volume SCSI Disk

 

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

16.10.2020 14:46

00:01:23

impl_1

16.10.2020 14:48

00:43:09

Out-of-Context Modules Runs

16.10.2020 14:23

00:22:50

Complete Implementation

16.10.2020 14:23

01:07:22

 

Well this sounds promising but impractical due to remote JTAG debugging and firewall, security and updates. Hence I wanted to check with a gamer laptop which I bought privately:

  • ASUS TUF Gaming A17 FA706II-H7024T
  • AMDl® Ryzen 7 4800H CPU @ 2.9 to 4.2 GHz × 8 CPU cores
  • DRAM: 16 GB @ 3200 GHz
  • SSD NVMe Micron MTFDHBA512QFD
  • Win10

This is a very cheap laptop with a good CPU and reasonable memory!

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

13.04.2021 15:35:13

00:00:56

impl_1

13.04.2021 15:36:14

00:34:39

Out-of-Context Modules Runs

13.04.2021 15:20

00:15:07

Complete Implementation

13.04.2021 15:20

00:51:03

 

However, please note the Xilinx Information Center updated my Vivado to version 2019.2.1 and not the version 2019.1.3

Then the question rose if the operating system has an influence. I lent an NVME SSD and installed Fedora 32 on it. Pease note the laptop HW is basically the same except the SSD and operating system Win10 vs Linux:

  • ASUS TUF Gaming A17 FA706II-H7024T
  • AMDl® Ryzen 7 4800H CPU @ 2.9 to 4.2 GHz × 8 CPU cores
  • DRAM: 16 GB @ 3200 GHz
  • SSD NVMe Samsung MZVLB512HAJQ-000H1
  • Fedora 32

I managed to run out of memory of 16 GByte SDRAM and 8 GByte swap... hence I enlarged the swap partition of my Fedora 32 Linux to 40 GByte.

Summary of the Results:

Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

21.04.2021 07:52:43

00:01:19

impl_1

21.04.2021 07:54:00

00:24:07

Out-of-Context Modules Runs

21.04.2021 07:32

00:19:44

Complete Implementation

21.04.2021 07:32

00:46:06

As well here please note this is Vivado 2019.2.1

Linux is slightly faster.

My conclusion: You do need more than 16 GByte of memory and in general a good hardware if you need/want speed and efficiency. Since the PC is the engineers tool-box I prefer good tools for my work... paying a bit more for the PC hardware will pay back in working time.

 

Cheers

Goran

0 Kudos
gmarinkovic
Explorer
Explorer
942 Views
Registered: ‎01-09-2012

@barriet

 

From Linux I can not publish the text with the tables and bullet points but from Win10 it works.

 

Cheers

Goran

0 Kudos
gmarinkovic
Explorer
Explorer
942 Views
Registered: ‎01-09-2012

@barriet, @joe306  , @archangel-lightworks , @watari 

If possible could you pubish the performance of your systems? It would be great to find out what an effective PC as a tool is. I guess the community will benefit from such numbers.

 

Cheers

Goran

0 Kudos
watari
Professor
Professor
869 Views
Registered: ‎06-16-2013

Hi @gmarinkovic 

 

Our team will prepare new server (Dell PowerEdge R7515. Its CPU is 2nd generation EPYC. Not latest (3rd) generation EPYC.) next week and can do bench mark ex. some TRD.

So, what is target TRD are we using ? If no idea, we would like to build VCU TRD 2020.2.

 

Best regards,

 

0 Kudos
watari
Professor
Professor
864 Views
Registered: ‎06-16-2013

Hi @gmarinkovic 

 

Here is my opinions.

 

- Using linux OS is best way, if your target design is large or huge number of placement and routing .

- Strongly recommend to use SSD on at least swap partition or swap file.

- Enough memory size is benefit and it is used as file cache, if your OS is linux.

- IPS (Instructions Per Second) is most important to resolve complex P&R.

  - I guess that TSP (traveling salesman problem) is one of best bench mark, if you couldn't use proper design by EDA tools.

 

Best regards,

 

0 Kudos
gmarinkovic
Explorer
Explorer
791 Views
Registered: ‎01-09-2012

@watari 

 

This is great... now we can see that the difference is between the server we used "ProLiant DL380 Gen10" and your "(Dell R7515". May I know why you want a server for Vivado compilations? Several Vivado versions? I used for my estimations rdf0471-zcu111-ipi-c-2018-2 since we are working with the RFSoC and compile bigger designs on it... the complexity is enough high to load a PC nicely but is reasonable enough to be practical. Could you use on your server the same TRD? In my first entry I described what we were doing for this benchmarking.

 

Cheers

Goran

0 Kudos
gmarinkovic
Explorer
Explorer
768 Views
Registered: ‎01-09-2012

@watari 

 

I checked quickly the CPU benchmark for your server. Dell appears to sell two configurations and you wrote you got not the latest one. Now comparing just to the CPU benchmark page https://www.cpubenchmark.net/ we see:

Screenshot from 2021-04-23 08-20-53.png

Lets see if you get similar numbers as our server. The difference concerning the CPU does not seem huge... but of course the memory and SSD do as well influence the game.

 

Cheers

Goran

0 Kudos
gmarinkovic
Explorer
Explorer
553 Views
Registered: ‎01-09-2012

I installed Fedora 34 on the SSD and the Vivado version 2019.1.3

  • HP ZBOOK 17 G7
  • Intel® i9-10885H CPU @ 2.4 to 5.3 GHz × 16 CPU cores
  • DRAM: 32 GB @ 2666 GHz
  • SSD NVMe Samsung 970 EVO Plus 2TB (2B2QEXM7)
  • Fedora 34

Summary of the Results:

                                       Benchmark Results

Design Runs

Start

Elapsed (hh:mm:ss)

synth_1

02.06.2021 10:48:17

00:01:06

impl_1

02.06.2021 10:49

00:19:26

Out-of-Context Modules Runs

02.06.2021 10:24

00:23:37

Complete Implementation

02.06.2021 11:08:52

00:45

 

As well quite fast... although I expected to see a lower time due to the higher CPU frequency. But on the other hand the SDRAM is slower than on the ASUS laptop.

0 Kudos
watari
Professor
Professor
532 Views
Registered: ‎06-16-2013

Hi @gmarinkovic 

 

Since I don't know how complex is your design and paralleable, I can't say that it's proper result or not.

However, if you could monitor cpu frequency fluctuations and status of L3 cache, you can estimate whether this result is proper or not.

 

Best regards,

 

0 Kudos
gmarinkovic
Explorer
Explorer
492 Views
Registered: ‎01-09-2012

Hello @watari 

 

The test I'm using is a Xilinx project "rdf0471-zcu111-ipi-c-2018-2.zip" which can be downloaded from their website. We did this to be reproducible without having to share a own design. The test is described in more detail in a log before (04-21-2021 01:46 AM - edited ‎04-21-2021 01:55 AM). Concerning your comment about cash and CPU usage.... well, this might look like this at some point in time (screenshot of test with ASUS TUF Gaming A17 FA706II-H7024T):

Screenshot_from_2021-04-21_08-53-16.png

But lets face it. There are different phases from synthesis till the bit file is generated and the only thing we care is the time it takes from starting the process till we get a result.

 

Cheers

Goran

 

 

 

0 Kudos