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

Slow file compiled with OPT_FAST when --output-split is used #1370

Closed
veripoolbot opened this issue Nov 29, 2018 · 2 comments
Closed

Slow file compiled with OPT_FAST when --output-split is used #1370

veripoolbot opened this issue Nov 29, 2018 · 2 comments

Comments

@veripoolbot
Copy link

@veripoolbot veripoolbot commented Nov 29, 2018


Author Name: Thomas Watts
Original Redmine Issue: 1370 from https://www.veripool.org

Original Assignee: Wilson Snyder (@wsnyder)


Hi, I'm trying to speed up the build time of a moderately large verilator model.

So I'm verilating with --output-split 20000 and compiling with VM_PARALLEL_BUILDS=1 OPT_FAST="-O1 -fstrict-aliasing"

This combination of options results in a 'slow' file being compiled with the OPT_FAST options, which for my design causes a ~60MB C file to be compiled for ~1hour.

The problem is that verilator creates Vmydesign__Trace__Slow__1.cpp which is picked up not by this rule

$(VM_PREFIX)%__Slow.o: $(VM_PREFIX)%__Slow.cpp
	$(OBJCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(OPT_SLOW) -c -o $@ $<

but instead by

$(VM_PREFIX)%.o: $(VM_PREFIX)%.cpp
	$(OBJCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(OPT_FAST) -c -o $@ $<

in verilator/include/verilated.mk
The adding of __1 by the --output-split is incompatible with the make rules.

(verilator-4.006, ccache and clang-6.0)

@veripoolbot

This comment has been minimized.

Copy link
Author

@veripoolbot veripoolbot commented Nov 30, 2018


Original Redmine Comment
Author Name: Wilson Snyder (@wsnyder)
Original Date: 2018-11-30T10:26:11Z


Good catch, the tests weren't checking the right options were used and of course what isn't tested is broken ;)

Fixed in git towards 4.008.

@veripoolbot

This comment has been minimized.

Copy link
Author

@veripoolbot veripoolbot commented Dec 1, 2018


Original Redmine Comment
Author Name: Wilson Snyder (@wsnyder)
Original Date: 2018-12-01T20:17:54Z


In 4.008.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.