Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update environment.yml to use vtr-optimized (vtr compiled with PGO) #1892

Merged
merged 1 commit into from
Dec 17, 2020

Conversation

HackerFoo
Copy link
Contributor

No description provided.

environment.yml Outdated Show resolved Hide resolved
@HackerFoo
Copy link
Contributor Author

@mithro Could you help me figure out why Conda fails? make env works on my workstation.

@HackerFoo
Copy link
Contributor Author

HackerFoo commented Dec 16, 2020

My theory is that the condarc file in the package causes this, because vtr-gui also fails: https://github.com/HackerFoo/symbiflow-arch-defs/tree/test-ci

GitHub
FOSS architecture definitions of FPGA hardware useful for doing PnR device generation. - HackerFoo/symbiflow-arch-defs

@HackerFoo
Copy link
Contributor Author

I think I know what's happening. Some dependencies are coming from conda-forge, so that needs to be included in environment.yml.

@HackerFoo HackerFoo marked this pull request as ready for review December 16, 2020 16:36
@acomodi
Copy link
Contributor

acomodi commented Dec 16, 2020

The fact that there are some conda-forge dependencies is a hint that there is something wrong with the vtr-optmized package. Looking at the package description in litex-hub-conda, I see that there is a condarc file which should be deleted from there: https://github.com/litex-hub/litex-conda-eda/blob/master/pnr/vtr-optimized/condarc.

The problem is that conda-forge generates this kinds of issues and leads to instability, and we should not use it at all.

GitHub
Conda recipes for FPGA EDA tools for simulation, synthesis, place and route and bitstream generation. - litex-hub/litex-conda-eda

@HackerFoo
Copy link
Contributor Author

HackerFoo commented Dec 16, 2020

Unfortunately, there is no other good way to get python-constraint. I can't use pip: conda/conda-build#548

@HackerFoo
Copy link
Contributor Author

HackerFoo commented Dec 16, 2020

I have created a package for python-constraint to avoid depending on conda-forge: hdl/conda-eda#61

environment.yml Outdated Show resolved Hide resolved
Signed-off-by: Dusty DeWeese <dustin.deweese@gmail.com>
Co-authored-by: Alessandro Comodi <44773360+acomodi@users.noreply.github.com>
Copy link
Contributor

@acomodi acomodi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, let's wait for CI

Copy link
Contributor

@litghost litghost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, merge if green

@litghost
Copy link
Contributor

I'm not seeing an improvement in overall runtime. This is likely because most of the time is spent during the lookahead computation. @HackerFoo have you explored/tested PGO improvements on the lookahead computation stuff?

@HackerFoo
Copy link
Contributor Author

I have not. It might be worth trying a separate PGO build optimized for lookup computation, but it's probably not worth the ~10% performance gain, and I suspect that lookup is mostly memory bound, so it will probably have less effect.

I think the most effective way to improve lookup time is by balancing the parallel workload better, and shortening the tail.

@HackerFoo HackerFoo merged commit 691e346 into f4pga:master Dec 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants