brl-cad on a Pi4?

Looks to me like you've got it. With your instructions and some notes in doc/README.Linux, Revision: 77316 compiled, made benchmarks, runs and raytraces. The benchmarks report:

These numbers seem to indicate that this machine is approximately 7234 times faster than the reference machine being used for comparison, a VAX 11/780 running 4.3 BSD named VGR. These results are in fact approximately 3.86 orders of magnitude faster than the reference.

My order of actions was not systematic, so it's not clear exactly which actions were necessary. The doc/README.Linux notes say:

Ubuntu/Debian

-------------

Users of Ubuntu, Debian, and other similar packaging distributions of Linux will need to ensure that a few essentials are in place before you will be able to compile BRL-CAD.

Following the build instructions in the INSTALL file. You will need:

gcc (6+, e.g. 6.0.3) g++ (6+, e.g. 6.0.3) make (e.g. gnu make 3.8.0) cmake (3.0.2 or newer)

All three of those have implicit dependencies on other packages.

You will also want to make sure that you have the X11 development headers installed:

apt-get install xserver-xorg-dev libx11-dev libxi-dev libxext-dev

Other development packages needed to build on Debian-based platforms:

for building the Tcl/Tk libraries: libfontconfig-dev

for OpenGL: libglu1-mesa-dev

It seems possible at least some of these are redundant, but I can't tell which..... All installed without any obvious complaints.

There are still no updates/replies to the support request on SourceForge at

formatting link
A followup from you (since you fixed it) or me (if you don't want to bother) might help things along.

With my thanks!

bob prohaska

:My

Reply to
bob prohaska
Loading thread data ...

On Fri, 2 Oct 2020 03:38:49 -0000 (UTC), bob prohaska declaimed the following:

Off-hand, nothing you least appears to be redundant...

gcc is the plain C compiler g++ is the C++ compiler make is the build system cmake is a system to build makefiles for use by make

The X11 stuff is the low-level core for interfacing to the X-Window protocol.

Tcl/Tk is a framework for developing GUI applications, and uses X-Window at its base

OpenGL is a standard for 2D/3D graphics rendering, often using hardware acceleration.

--
	Wulfraed                 Dennis Lee Bieber         AF6VN 
	wlfraed@ix.netcom.com    http://wlfraed.microdiversity.freeddns.org/
Reply to
Dennis Lee Bieber

Perhaps I should have said "already present". I hadn't found these instructions on the first compile attempt and there were no error messages apart from the pointer-type mismatch. Nothing about missing files or programs. The machine seemed happy with the existing gcc, g++, make and cmake. I didn't change them.

In any case, I'm simply glad it worked. As a matter of curiosity, does OpenGL on the Pi4 use the GPU? I know there was work to that end, but haven't heard much recently.

Thanks for reading,

bob prohaska

Reply to
bob prohaska

If you want to follow-up, feel free. It seems to me there are a huge number of bugs and feature requests that have gone unfixed, sometimes for years. OTOH, the wiki is apparently editable (even anonymously) so that might a good place to add some Raspberry Pi specific compilation notes.

The cmake file changes might be best submitted in the patch department on Sourceforge.

I can try to do these things this weekend.

Funny, I initially tried this compilation just to see if my little 3B+ could even build this project. And to see how long it would take. I didn't save exact times but it was about two hours.

Reply to
Anssi Saari

The Pi4 was faster, but not hugely. I think it took about 90 minutes.

The benchmarks worked on the Pi4, reporting:

-----------quote----------------- B R L - C A D B E N C H M A R K ================================= Running /home/bob/brlcad-code/build/bin/benchmark on Thu Oct 1 19:29:42 PDT 2020 Logging output to run-26267-benchmark.log Linux raspberrypi 5.4.51-v7l+ #1333 SMP Mon Aug 10 16:51:40 BST 2020 armv7l GNU/Linux

Using [/home/bob/brlcad-code/build/bin/rt] for RT Using [/home/bob/brlcad-code/build/bin/../share/db] for DB Using [/home/bob/brlcad-code/build/bin/../share/pix] for PIX Using [/home/bob/brlcad-code/build/bin/../share/pix] for LOG Using [/home/bob/brlcad-code/build/bin/pixcmp] for CMP Using [/home/bob/brlcad-code/build/bin/elapsed.sh] for ELP Using [32] for TIMEFRAME Using [300] for MAXTIME Using [2] for DEVIATION Using [5] for AVERAGE

RT reports the following version information: BRL-CAD Release 7.32.1 The BRL-CAD Raytracer RT BRL-CAD Release 7.32.1 The BRL-CAD Ray-Tracing Library BRL-CAD Release 7.32.1 The BRL-CAD Numerical Computation Library BRL-CAD Release 7.32.1 The BRL-CAD Utility Library

Minimum run time is 3 minutes, 12 seconds Maximum run time is 30 minutes Estimated time is 9 minutes, 36 seconds

Running the BRL-CAD Benchmark tests... please wait ...

+++++ moss Frame 0: 261660 rays in 0.21 sec = 1219196.54 rays/sec (RTFM) Frame 1: 542220 rays in 0.42 sec = 1286778.91 rays/sec (RTFM) Frame 5: 8390560 rays in 6.44 sec = 1302078.75 rays/sec (RTFM) Frame 7: 34038144 rays in 24.53 sec = 1387612.44 rays/sec (RTFM) Frame 8: 68601600 rays in 48.95 sec = 1401336.68 rays/sec (RTFM) Frame 9: 68698624 rays in 50.69 sec = 1355310.36 rays/sec (RTFM) Frame 10: 69267200 rays in 50.61 sec = 1368731.80 rays/sec (RTFM) Frame 11: 68244224 rays in 51.71 sec = 1319747.12 rays/sec (RTFM) pixcmp pixels: 262144 matching, 0 off by 1, 0 off by many moss.pix: answers are RIGHT +++++ world Frame 0: 366988 rays in 0.70 sec = 524399.48 rays/sec (RTFM) Frame 1: 721822 rays in 1.36 sec = 532376.49 rays/sec (RTFM) Frame 4: 5774192 rays in 10.43 sec = 553620.67 rays/sec (RTFM) Frame 5: 11665088 rays in 21.25 sec = 548839.33 rays/sec (RTFM) Frame 6: 23296384 rays in 41.33 sec = 563646.31 rays/sec (RTFM) Frame 7: 23316800 rays in 42.02 sec = 554873.90 rays/sec (RTFM) pixcmp pixels: 262144 matching, 0 off by 1, 0 off by many world.pix: answers are RIGHT +++++ star Frame 0: 232467 rays in 0.47 sec = 491700.45 rays/sec (RTFM) Frame 1: 464618 rays in 0.91 sec = 509621.25 rays/sec (RTFM) Frame 5: 7443936 rays in 13.67 sec = 544505.34 rays/sec (RTFM) Frame 6: 14919360 rays in 27.85 sec = 535771.45 rays/sec (RTFM) Frame 7: 14951296 rays in 28.42 sec = 526051.61 rays/sec (RTFM) Frame 8: 15188736 rays in 29.17 sec = 520757.95 rays/sec (RTFM) pixcmp pixels: 262144 matching, 0 off by 1, 0 off by many star.pix: answers are RIGHT +++++ bldg391 Frame 0: 275155 rays in 0.72 sec = 383359.18 rays/sec (RTFM) Frame 1: 540192 rays in 1.38 sec = 390627.27 rays/sec (RTFM) Frame 4: 4562640 rays in 10.85 sec = 420357.31 rays/sec (RTFM) Frame 5: 8839232 rays in 21.23 sec = 416373.51 rays/sec (RTFM) Frame 6: 17941184 rays in 40.92 sec = 438488.06 rays/sec (RTFM) Frame 7: 17837440 rays in 41.56 sec = 429217.74 rays/sec (RTFM) Frame 8: 18077184 rays in 41.67 sec = 433863.00 rays/sec (RTFM) pixcmp pixels: 262144 matching, 0 off by 1, 0 off by many bldg391.pix: answers are RIGHT +++++ m35 Frame 0: 483117 rays in 0.95 sec = 511122.15 rays/sec (RTFM) Frame 1: 1010506 rays in 1.82 sec = 555080.19 rays/sec (RTFM) Frame 4: 7834816 rays in 14.04 sec = 557878.91 rays/sec (RTFM) Frame 5: 15588736 rays in 27.58 sec = 565221.71 rays/sec (RTFM) Frame 6: 31179200 rays in 56.33 sec = 553482.90 rays/sec (RTFM) Frame 7: 31441792 rays in 55.38 sec = 567773.08 rays/sec (RTFM) pixcmp pixels: 262070 matching, 74 off by 1, 0 off by many m35.pix: answers are RIGHT +++++ sphflake Frame 0: 1397652 rays in 2.14 sec = 653622.38 rays/sec (RTFM) Frame 1: 2781346 rays in 4.07 sec = 683779.98 rays/sec (RTFM) Frame 3: 11483712 rays in 15.98 sec = 718852.35 rays/sec (RTFM) Frame 4: 22896464 rays in 31.45 sec = 728078.31 rays/sec (RTFM) Frame 5: 22204352 rays in 31.93 sec = 695431.11 rays/sec (RTFM) Frame 6: 22355824 rays in 31.87 sec = 701569.01 rays/sec (RTFM) pixcmp pixels: 262144 matching, 0 off by 1, 0 off by many sphflake.pix: answers are RIGHT

... Done.

Total testing time elapsed: 16 minutes, 30 seconds

The following files have been generated and/or modified: *.log ..... final log files for each individual raytrace test *.pix ..... final pix image files for each individual raytrace test *.log.* ... log files for previous frames and raytrace tests *.pix.* ... pix image files for previous frames and raytrace tests summary ... performance results summary, 2 lines per run

Run '/home/bob/brlcad-code/build/bin/benchmark clean' to remove generated pix files.

Summary: Abs raspberrypi 1319747.12 554873.90 520757.95 433863.00 567773.08 701569.01 683097.34 Thu Oct 1 19:46:12 PDT 2020

*vgr raspberrypi 9632.48 8274.29 9287.63 8130.86 8031.87 47.33 7234.07

#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*# Benchmark results indicate an approximate VGR performance metric of 7234 Logarithmic VGR metric is 3.86 (natural logarithm is 8.89) #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#

These numbers seem to indicate that this machine is approximately 7234 times faster than the reference machine being used for comparison, a VAX 11/780 running 4.3 BSD named VGR. These results are in fact approximately 3.86 orders of magnitude faster than the reference.

Here are some other approximated VGR results for perspective: 120 on a 200MHz R5000 running IRIX 6.5 250 on a 500 MHz Pentium III running RedHat 7.1 550 on a dual 450 MHz UltraSPARC II running SunOS 5.8 1000 on a dual 500 MHz G4 PowerPC running Mac OS X 10.2 1500 on a dual 1.66 GHz Athlon MP 2000+ running RedHat 7.3 52000 on a 4x4 CPU 2.93 GHz Xeon running RHEL Server 5.4 65000 on a 512 CPU 400 MHz R12000 Running IRIX 6.5

You are encouraged to submit your benchmark results and system configuration information to snipped-for-privacy@brlcad.org ~~~~~~~~~~~~~~~~~~~~ Including additional kernel and hardware information in the log.

Collecting system state information (via /sbin/sysctl) Collecting system CPU information (via /proc/cpuinfo) Collecting system CPU information (via /usr/bin/lscpu)

Read the benchmark.tr document for more details on the BRL-CAD Benchmark. The document should be available in the 'doc' directory of any source or complete binary distribution of BRL-CAD.

Output was saved to run-26267-benchmark.log from /home/bob/brlcad-code/build/bench Benchmark testing complete.

-------------end quote-----------------------

It seems best if I simply report that the problem is fixed and perhaps quote the patches you developed. It makes little sense for me to submit them, since I can't answer any questions that might come up. The connection between the error messages and the fix eludes me completely. Many thanks!

bob prohaska

Reply to
bob prohaska

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.