[video member=miotatsu stream_platform=twitch project=riscy title="Dhrystone" vod_platform=youtube id=WtusQ-7fTgQ annotator=Miblo] [0:08][Recap and set the stage for the day] [0:52][Consult @Croepha's forum post 'Learning about circuits'[ref site="RISCY BUSINESS" page="Learning about circuits" url=https://riscy.handmade.network/forums/t/2505-learning_about_circuits]] [2:14][Try to model a single LED in the Falstad Circuit Simulator[ref site=Falstad page="Circuit Simulator Applet" url=http://www.falstad.com/circuit/] in conjunction with the HiFive1 Schematics[ref site=SiFve page="HiFive1 Schematics" url=https://www.sifive.com/documentation/boards/hifive1/hifive1-schematics/]][:circuitry :peripheral] [4:33][Let @Croepha know of his citation in the Big RISCY BUSINESS Question Thread[ref site="SiFive Forums" page="The Big RISCY BUSINESS Question Thread" url=https://forums.sifive.com/t/the-big-riscy-business-question-thread/531]] [5:25][@croepha][Under draw there is 1 terminal voltage source and a ground][:circuitry] [5:39][Continue modeling an LED[ref site=Falstad page="Circuit Simulator Applet" url=http://www.falstad.com/circuit/][ref site="SiFive Forums" page="The Big RISCY BUSINESS Question Thread" url=https://forums.sifive.com/t/the-big-riscy-business-question-thread/531]][:circuitry :peripheral] [9:06][Consult the further replies to 'Learning about circuits'[ref site="RISCY BUSINESS" page="Learning about circuits" url=https://riscy.handmade.network/forums/t/2505-learning_about_circuits]] [9:41][@croephas][The ground in your simulation is simplified, but is effectively what you have when you have OE=1 and XOR=1] [10:15][Determine to check out other demos and update the Freedom E SDK] [11:10][Embark on studying the Dhrystone demo, in dhry.h][:profiling :research] [16:24][Refresh our memory on how to build and upload to the HiFive1[ref site="SiFive Developers" page="SiFive HiFive1 Getting Started Guide" url=https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.2.pdf]][:research] [19:15][Build the Dhrystone demo and upload it to the HiFive1] [20:45][:Run the Dhrystone Benchmark, Version 2.1] [21:48][Start to read dhry_1.c while the Dhrystone Benchmark (presumably) crunches away in the background][:research] [23:15][Consult the output of the Dhrystone Benchmark] [24:43][@croepha][Alright take care, I have to run. Thanks for streaming] [24:48][Continue consulting the Dhrystone output and scan the SiFive forums for information on the benchmark][:profiling :research] [26:20][Consult ARM,[ref site=ARM page="Dhrystone and MIPs performance of ARM processors" url=http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka3885.html] Wikipedia[ref site=Wikipedia page=Dhrystone url=https://en.wikipedia.org/wiki/Dhrystone] and Roy Longbotom's PC Benchmark Collection[ref site="Roy Longbotom's PC Benchmark Collection" page="Dhrystone Benchmark Results On PCs" url="http://www.roylongbottom.org.uk/dhrystone results.htm"] for some pointers towards interpreting the Dhrystone benchmark][:profiling :research] [30:21][Continue studying dhry_1.c][:profiling :research] [40:25][Express interest in seeing the code generation for working with floating point] [41:37][Continue studying dhry_1.c from main()][:profiling :research] [46:19][Note that this is very non-descriptive code] [47:18][Continue reading the initialisation code in dhry_1.c][:profiling :research] [48:38][Read the :timing code in dhry_1.c][:profiling :research] [49:47][Consult the internet for 1-indexed programming languages[ref site=Wikipedia page="Comparison of programming languages (array)" url=https://en.wikipedia.org/wiki/Comparison_of_programming_languages_(array)#Array_system_cross-reference_list]][:language] [52:44][Continue reading the :timing code in dhry_1.c][:profiling :research] [56:54][Read the interpretation and printing code in dhry_1.c][:profiling :research] [58:42][Read through the procedures in dhry_1.c][:profiling :research] [59:24][Scan through the remaining files in the Dhrystone demo][:profiling :research] [1:01:14][Read time() in dhry_stubs.c][:profiling :research] [1:01:53][Scan through dhry.h and Makefile to find that we are using -DTIME as the :timing method] [1:02:52][That's everything, with thoughts that this demo is uninteresting] [1:03:46][Shout-out to Jeff Roberts' printf[ref site=GitHub page="stb/stb_sprintf.h" url=https://github.com/nothings/stb/blob/master/stb_sprintf.h]] [1:04:58][Glimpse into the future of what we may try and glean from this Dhrystone demo] [/video]