- 46
- 14 477
STM32World
United Kingdom
เข้าร่วมเมื่อ 2 มิ.ย. 2021
Video channel supporting and expanding on the STM32World Wiki. We will be posting a lot of tutorial and getting started videos covering various topics of STM32 development, as well as dive into more complicated topics.
Source code for all the examples in the tutorial videos are here: github.com/STM32World/stm32fun
Source code for all the examples in the tutorial videos are here: github.com/STM32World/stm32fun
STM32 Tutorial #28 - FreeRTOS Runtime Statistics
In this video we will collect and use runtime statistics from FreeRTOS.
As usual, please do like and subscribe if you learned anything from this video.
Check the previous video about FreeRTOS here: th-cam.com/video/3Kevk3l6vPs/w-d-xo.html
FreeRTOS page: stm32world.com/wiki/STM32_FreeRTOS
STM32World wiki: stm32worlld.com/wiki
00:00 Intro and recap
01:22 Modify FreeRTOS config in STM32CubeMX
04:20 Modifying the code - adding variable and adding interrupt hook
07:12 Running through debugger
08:53 Create a task to show stats
12:21 Allocating more memory to a task based on stats
As usual, please do like and subscribe if you learned anything from this video.
Check the previous video about FreeRTOS here: th-cam.com/video/3Kevk3l6vPs/w-d-xo.html
FreeRTOS page: stm32world.com/wiki/STM32_FreeRTOS
STM32World wiki: stm32worlld.com/wiki
00:00 Intro and recap
01:22 Modify FreeRTOS config in STM32CubeMX
04:20 Modifying the code - adding variable and adding interrupt hook
07:12 Running through debugger
08:53 Create a task to show stats
12:21 Allocating more memory to a task based on stats
มุมมอง: 82
วีดีโอ
STM32 Tutorial #27 - DIVING into FreeRTOS
มุมมอง 21612 ชั่วโมงที่ผ่านมา
In this video we will start a dive into FreeRTOS on STM32 MCUs. We will be using the CMSIS RTOS/V2 abstraction layer. Next video about FreeRTOS is here: th-cam.com/video/zY_I6GZffos/w-d-xo.html As usual, please like and subscribe. You can watch the entire Video Series here: th-cam.com/video/EZqwBuRpdns/w-d-xo.html STM32World wiki FreeRTOS page: stm32world.com/wiki/STM32_FreeRTOS STM32World wiki...
STM32 Tutorial #26 - Creating a LIBRARY for a I2C sensor
มุมมอง 24519 ชั่วโมงที่ผ่านมา
In this video we will finalise dealing with the BMP085 temperature and pressure sensor by creating a portable C library. As usual, if you like this video please like and subscribe and I love to hear your thoughts and questions in the comments below. #stm32 #tuturial #i2c #hal #stm32cubeide #stm32cubemx 00:00 Intro and recap 01:51 Creating the library directory and files 05:09 Explaining the hea...
STM32 Tutorial #25 - Bit manipulation using bit banding
มุมมอง 406วันที่ผ่านมา
In this video we will be doing bit-manipulation using Bit Banding. Bit Banding is a feature (optional feature) of ARM Cortex M0, M3 and M4 cores and it is as far as I know available in all of the F series MCU's. As usual please like and subscribe. Comments are greatly appreciated. Described here: stm32world.com/wiki/STM32_Bit_Banding 00:00 Intro 00:45 Historical background - the 8051 MCU 02:55 ...
STM32 Tutorial #24 - HOW TO Read from and Write to I2C Slave
มุมมอง 18514 วันที่ผ่านมา
In this video we will use I2C to read temperature data from the BMP085 Temperature/Pressure sensor. Sensor documentation here: stm32world.com/wiki/Bosch_BMP_series_digital_pressure_sensor 00:00 Intro and recap 01:55 Understanding how to read temperature 03:00 Creating defines for registers and addresses 04:00 Creating the read temperature function 04:50 Writing TO the I2C device 07:27 Reading t...
STM32 Tutorial #23 - UNDERSTANDING GPIO
มุมมอง 29214 วันที่ผ่านมา
In this video we dive into the details around GPIOs and alternate functions. As usual please like and subscribe! And I read all comments and reply if necessary, so please do write your comments down below. Wiki page about GPIOs: stm32world.com/wiki/General-purpose_input/output_(GPIO) Site: stm32world.com/wiki 00:00 Intro and recap 00:50 Explaining GPIO basics and documentation 04:50 The anatomy...
OOPS, SOLUTION to the crazy mystery
มุมมอง 10221 วันที่ผ่านมา
FINALLY found - with a little help from someone on Reddit - a solution to the crazy mystery I presented a few days back. The original video was here: th-cam.com/video/ossp0eSth9A/w-d-xo.html As expected the problem was glaringly simple and I am a bit ashamed I didn't spot it myself. I guess I must be an idiot ;) 00:00 Intro and recap 02:55 The solution from a Redditor 03:40 Testing the solution...
STM32 Tutorial #22 - AMAZING Jump to System Bootloader
มุมมอง 35021 วันที่ผ่านมา
In this video we demonstrate that it is possible to jump to the built-in system bootloader without using the boot0 pin. It is a bit naughty as it uses the stack space to store a flag during restart (stack space is NOT initialized during a reset). Please like and subcribe if you enjoy this kind of video. I also love comments - good and bad. This approach is documented on the STM32World wiki here...
STM32 - CRAZY Mystery!
มุมมอง 41821 วันที่ผ่านมา
In this video I am asking YOU dear viewers for help. Pretty please, with sugar on top. I have been struggling with a mystery for a while which have me quite stunned. Update: The solution is now here: th-cam.com/video/W0gh_nC45WY/w-d-xo.html Please like and subscribe if you want a notification when I figure this out. Please watch the video and if you want more details I have also documented this...
STM32 Tutorial #21 - I2C Read and Write
มุมมอง 41428 วันที่ผ่านมา
In this tutorial video we will read from and write to a I2C device. The video also describe the difference between Big- and Little-Endian MCU's. Site: stm32world.com/wiki Source for this example: github.com/STM32World/stm32fun/tree/master/stm32world_i2c2 The device and datasheets: stm32world.com/wiki/DFRobot_10_DOF 00:00 Intro and Recap 01:20 Reading the datasheet 05:15 Explaining endianness 10...
STM32 Tutorial #20 - Understanding I2C
มุมมอง 356หลายเดือนก่อน
In this video we will introduce the I2C bus and the STM32 HAL libraries supporting the I2C peripheral. Please LIKE and subscribe and comments are always appreciated. WARNING to the woke audience - I use the regular terms master and slave! STM32World wiki: stm32world.com/wiki/I²C 00:00 Intro and recap 02:50 The important parts - bus implementation and I2C addresses 06:12 Explaining the address b...
STM32 Tutorial #19 - Understanding C types on STM32 MCUs
มุมมอง 378หลายเดือนก่อน
Just a short video going through the size of various standard C types on STM32 MCUs. Please like and subscribe and as always - comments are greatly appreciated. 00:00 Intro 00:30 Introducing the "The C Programming Language" 04:38 Checking size of variables using sizeof operator 05:17 Going through all the standard variable types
STM32 Tutorial #18 - SURPRISING Timer feature - Rotary Encoder with Timer Input Capture
มุมมอง 450หลายเดือนก่อน
In this video we will decode the signals from a rotary encoder using input capture from two timer channels. As usual please like and subscribe and questions/comments really help me improving the quality of the channel. Described on our wiki here: stm32world.com/wiki/STM32_Rotary_Encoder 00:00 Intro/Recap and an apology 01:39 Introduction to rotary encoders 06:18 Setting up a project 07:03 Confi...
STM32 Tutorial #17 - More debugging - introducing SWO
มุมมอง 298หลายเดือนก่อน
In this video we will dive more into debugging by looking at the SWO (Serial Wire Output) and using that to print debug information and to do profiling. As usual, please do like, subscribe and comment down below. Example code can be found on Github here: github.com/STM32World/stm32fun STM32World Wiki here: stm32world.com/wiki DIY ST-Link device: stm32world.com/wiki/DIY_STM32_Programmer_(ST-Link...
STM32 Absolutely SHOCKING Solution to the Mystery
มุมมอง 482หลายเดือนก่อน
STM32 Absolutely SHOCKING Solution to the Mystery
STM32 Tutorial #16 - UART Receive with DMA and Idle Detection
มุมมอง 264หลายเดือนก่อน
STM32 Tutorial #16 - UART Receive with DMA and Idle Detection
STM32 Tutorial #15 - Sine wave on DAC with DMA
มุมมอง 5022 หลายเดือนก่อน
STM32 Tutorial #15 - Sine wave on DAC with DMA
STM32 Tutorial #14 - Individual PWM channels pulsing with a sine wave
มุมมอง 2012 หลายเดือนก่อน
STM32 Tutorial #14 - Individual PWM channels pulsing with a sine wave
STM32 Tutorial #13 - Optimizing my stuff again (more than one way to skin a cat)
มุมมอง 1712 หลายเดือนก่อน
STM32 Tutorial #13 - Optimizing my stuff again (more than one way to skin a cat)
STM32 Tutorial #12 - Low level access to peripherals
มุมมอง 4192 หลายเดือนก่อน
STM32 Tutorial #12 - Low level access to peripherals
STM32 Tutorial #11 - Running multiple timer channels
มุมมอง 2072 หลายเดือนก่อน
STM32 Tutorial #11 - Running multiple timer channels
STM32 Tutorial #10 - Pulsing a LED using PWM from a Timer Channel
มุมมอง 1562 หลายเดือนก่อน
STM32 Tutorial #10 - Pulsing a LED using PWM from a Timer Channel
STM32 Tutorial #9 - Using a timer channel to blink a LED
มุมมอง 3182 หลายเดือนก่อน
STM32 Tutorial #9 - Using a timer channel to blink a LED
STM32 Tutorial #8 - Introduction to timers
มุมมอง 2722 หลายเดือนก่อน
STM32 Tutorial #8 - Introduction to timers
STM32 Tutorial #7 - Optimizing my stuff (getting smarter every day)
มุมมอง 1972 หลายเดือนก่อน
STM32 Tutorial #7 - Optimizing my stuff (getting smarter every day)
STM32 Tutorial #6 - External Interrupt
มุมมอง 2582 หลายเดือนก่อน
STM32 Tutorial #6 - External Interrupt
STM32 Tutorial #5 - DEBUGGING in-circuit
มุมมอง 2292 หลายเดือนก่อน
STM32 Tutorial #5 - DEBUGGING in-circuit
STM32 Tutorial #4 Second Blink (done right!)
มุมมอง 5463 หลายเดือนก่อน
STM32 Tutorial #4 Second Blink (done right!)
STM32 Tutorial #3 First Blink (done WRONG!)
มุมมอง 4393 หลายเดือนก่อน
STM32 Tutorial #3 First Blink (done WRONG!)
I was looking for PICO PIO work with DMA to do basically the same, read a message to idle into a DMA buffer - found this video very informative on what I'm trying to do being on the right lines and if I can't achieve with PIO then great to know about what the STM32 can do as another option. Great video!
When I discovered that one about a year ago I think I was quite surprised that this is not being mentioned more often. The receive to idle makes it much easier to work with serial receive. Happy you enjoyed the video! Check out my other videos in the serious - you might find another surprise or two (bit banding is a life safer too).
Great tutorial. Do you know about system design?
Well, I know some things ;) But you would need to be a bit more specific what you have in mind.
You are doing great job ! I saw in the planned videos you will talk about USB and DIY Bootloader, can you explain and show : - How to flash fw through USB without any buttons, just using PC software using DFU or MSC (UF2) - USB IP or USB WIFI for vendor specific devices Thanks.
USB will come later. I am struggling a bit coming up with ideas which will be possible to squeeze into < 30 min videos. The bootloader - well - first you should check the earlier video on jumping to the built-in bootloader. With enough storage on-board it _would_ be possible to do this more elegantly so that video would come after I have been showing SPI flash ;) Your comments and suggestions are greatly appreciated!
thanks for the video. could you teach us how to work with sd cards?
That is a pretty good idea. I don't have a STM32World board designed yet but I might throw one together. Alternative I do have a couple of STM32F405 based boards with a SD card slot on them. The sd card interface is quite simple. The hard part is to use the FAT library actually.
Referencing main.h in library isn't a good idea. Should only reference what is actually used, for instance a particular header file. If it is a variable, then declare it "extern int some_var" in the library.
Ok, point taken. In this case a few typedefs
To use the live expression do I need to configure the MCU's debug mode to Trace Asynchronous SW mode or Serial Wire is enough? Also can I use st-link v2 for that or do I need JTAG?
I think you will find an answer to your questions in Tutorial video #17 th-cam.com/video/j-GaEZKrkbQ/w-d-xo.html In short, you can use a st-link v2 if it is an original. The Chinese clones do not include a SWO pin by default.
Sorry, I missed the "live expression" part of your question. And no, no need for Trace - Serial Wire is enough and that will work with any st-link - even the Chinese clones.
"/ pow(2,4)" == ">> 4"
Right - but I lifted the formulas straight from the datasheet. Easier to toubleshoot later.
Hi, nice video, I have shield that fits on Arduino Mega 2560 for electronic lead screw, it has connection to fit, spindle encoder,100 line hand encoder. stepper drivers, LCD, rotary switches, push buttons, menu buttons, joystick etc. Each pin is pull up with 1K Resistor. To make shield for STM32F767ZI to fit above things, can board handle it, it say pins are 5v tolerant. Or to install 3v3 to 5v level shifters. Thank you.
That's a tricky one. Ultimately it will probably boil down to how much current will run into all the pins on the stm32 when going low and that could become a bad thing. You would have to read the datasheet for your specific mcu and schematics of the "shield". 5V tolerant pins is a nice thing but they probably shouldn't be relied on without careful consideration. I have used it a few times - for example to drive ws2812 leds (which require 5V data).
@@stm32world Thank you, to be on safe side use level shifters 3v3 to 5v for each pin, can you recommend which shifters for analog pins and digital pins.Thank you very much.
Sorry, no - the recommendation would be the same - look at the schematics and the datasheets for the individual stuff.
@12:25 Nitpick; It is not "after reset" but "after initialization".
Hmmm, yeah - you are probably right about that, but nitpicking back - IF the initialisation is run at each reset then that would technically also be the same. I am going to test this, which _can_ be done the moment "main" is called before the HAL/NVIC etc. get executed.
Yes, a very comprehensive overview of the GPIO! Thank you very much.
I hope it is useful. I am doing a deeper dive into the HAL library in the next few videos.
So the code for the STM32F411 wasn't identical?
There was one declaration different - which was so far fetched I didn't even bother to check.
And I know it's embarrassing - hence the video title ;)
Sorry about the audio in this one - don't know what happened.
I can't add serial output using st link v2 (chinese). In the video, you didn't add swo and I don't think it's necessary. Is swo still needed to bring up serial even if it is not added in the ioc file? btw, ur videos help me so much, thx uu
The clone ST-Link devices does not have serial or swo (swo _can_ be added with a bit of tweaking). So, if you want to use that you have to use a separate usb-serial adaptor. You don't need both swo and serial. Both can be used to print debug statements and the swo can do tons of other stuff - like monitoring variables "live". I made my own st-link which can do it all ( stm32world.com/wiki/DIY_STM32_Programmer_(ST-Link/V2-1) )
That's a really nice trick, thanks for sharing. In a real world application I would disable interrupts before messaging with the stack. Saw the missing assignment to now right after you copied it and waited asking myself, when will be notice :-)
If you read the evaluation part of the wiki article (here: stm32world.com/wiki/STM32_Jump_to_System_Memory_Bootloader#Evaluation) yes - it could potentially go wrong and I guess disabling interrupts would improve that.
And yeah - took me a while to notice the missing assignment - long enough that I had to pause the recording while I figured it out ;) Wait until you see the solution to the Crazy Mystery video I posted some days back.
great vid, ta
Thanks, glad you liked it.
Pretty awesome.
I expected to be shot down for messing with the bloody stack ;) But thanx.
Let's put it this way - normally the stack is better left to the compiler ;(
The next I2C video is still a work in progress. I got a bit bored with I2C so decided to squeeze in a few other videos. It will go up soon so have patience.
Got into this video planning a short video on the topic of bit-banding (as opposed to bit banging).
I can't wait to see if anyone have a suggestion to this one!
Came here to say thanks for coming to the livestream. Just subscribed to your channel. I will be watching your videos.
That is very cool! I am at least 12-14 hours ahead of you timezone wise, so I had to leave the live stream before you were done - sorry about that.
I do have a few comments on your live stream but I'll post that on your channel. Any comments on my videos is greatly appreciated. I am still in an early learning phase when it comes to videos.
YOU ROCK! Thanks for the nieche content!
Thanx. I actually didn't think this particular video would be well received - might make more like this.
My vote is short and sweet: 10 minutes or less. Thank you for these videos. You are making the material very accessible.
Your comment is much appreciated ;) From the limited experience I got so far, 10 minutes or less is hard though. There's simply not enough time to explain. But I will try to make them as short as possible.
What IDE are you using? is it Eclipse?
Check the first video in the series, which covers installation and setup as well as hardware needed. It's ST's STM32CubeIDE - which is Eclipse based. The entire series is described here: stm32world.com/wiki/STM32_Getting_Started_Tutorial_Video_Series_(by_STM32World)
Thanks you very much
You are most welcome. Will dig deeper in the following 2-3 videos although I might get bored and squeeze something else in.
As mentioned in this video I considered if this was too basic to be worth a video. However, reasoning that this IS supposed to be a "start from scratch" tutorial series, I decided to post it anyway. Let me know if you want more or less of this.
Hi Thank you for the tutorial I will try your example as I'm using at32f403a board from weact . it has higher clock speed and larger flash memory . it would be helpful to see tutorials about artery Chips . thanks again
That is interesting. Does STM32CubeIDE and HAL work with those. I have done some work with non-st mcu's - mostly risc-v ones but this particular series of videos is focused on STM32CubeIDE and HAL.
Great explanation. Your voice is clear so i can follow easily(i'm not a native English) Pls keep making more video's about stm32.
I will continue to make these videos when I have the time. Please continue commenting and ask questions down below.
Using the timer in such a way is quite interesting. I do miss the ability to detect speed of the rotation, though. For me, the state machine plus a timer measuring the time between A and B has been my method. Thank you for an excellent demonstration!
If you watch the video to the end, I enable the input capture interrupt and the callback is executed. Would be quite trivial to establish the speed either by looking at the uwTick OR resetting a faster running timer in that callback. It might even be possible to cascade two timers.
If you run say TIM2 at 1 MHz (prescaler of 83 in this case) you can detect the space between the interrupts on TIM3. Quite simple.
The reason you didn't see any variables @14:58 is because you managed to pause outside the scope (inside HAL_GetTick()) of those variables that you expected to see. A singlestep or two would have been enough to get back to main() and the variables would have shown.
Yeah that makes sense.
very cool videos
Glad you like them. Good to get some response ;)
Another small mistake I just noticed; @4:07 PA2 should go to PA1 (Tx -> Rx)
Right - I missed that. Not going to redo the video because of that detail ;) Let it be a learning experience for the viewers.
Awesome. very helpful. I'm still looking to figuring out my problem with DACs, would you mind sharing your email so that i can share the details with you?
I've emailed you on stm32world domain.. hope that reaches you.
The Facebook group is probably the best place to ask. Quite active.
@@stm32world got it. will do.
I think it is a matter of Registers being used rather than Memory location for loop_cnt. So instead of a "inc" there is a load, inc, store operation.
Yeah - I am quite sure this is the most likely explanation - looking at the assembler code.
I have a hypothesis. When the variable is inside the function and function's memory area is closer to the variable, it only need single instruction to access that variable while in case of global variable, it needs to use 2 more extra instructions, specially when the function code needs to access memory outside of its stack.
It is probably something along that line - except, local variables are allocated on the stack which is towards the top of the memory. This is definitely something I need to figure out - it annoys me I don't understand it and it is definitely worth knowing. I appreciate you taking the time to respond.
@@stm32world maybe there is something going on with the compiler trying to optimise the stuff but ruins a thing or two... wonder if you try compile a hex with different settings and then see if it is the same?
just a thought. I have seen this type of behaivor before in C# when variables define outside a thread are accessedin thread. There has to be (OLD TERM) the thread in an a box, and accessing outside of the box requires more code to reference the out of box variables, once accessed they have to be reboxed before the program can continue. To test the move all back in the box except for one variable. the time should change just to unbox rebox one variable
Your (NEW TERMS) have me somewhat confused to be honest but I am not overly familiar with C#.
Awesome stuff!
Glad you enjoyed it
Small nitpick; @5:51 "A much much better approach..." well, that depends on what you are using serial communications for. For instance, in more stateful protocols (often binary), then it can be a lot easier to do the interrupt-driven approach. And if the bitrate is really low, then the "wait to idle" might be unnecessary long (one full byte out of say (2-10 bytes), if the IRQ routine knows that an "end-of-packet" marker was just sent. "In many cases..." would have been a better wording. ALSO; Kudos on improving sound quality!!!
Well - just to be clear - I do love the nitpicks - that is the ONLY way I can improve this. And yes - I can easily imagine situations where interrupt - or even polling would work fine but I _think_ the vast majority of cases uarts are used it is to receive strings of sorts. So - audio quality if ok-ish now?
@@stm32world Audio is a magnitude better than previously.
Compression enabled and level boosted
Curious , what software do you use for editing the video/audio?
@@bubaks2 I mentioned in the first video that I _really_ want to do these videos unscripted. I record them with OBS studio and two external cams. I use a noise cancelling Logitech headset for the audio (the noise cancellation is essential as I am sitting about 1 1/2 m from a fan). The audio compression was done inside OBS studio while recording. IF I edit anything I do that in an application called kdenlive, but many of the videos are one shot unedited.
How we run a bldc motor with pwm siganle please explain sir the sin look up table how we calculate sir
Running a bldc motor is probably a bit too advanced for half an hour tutorial videos. ST themselves have some pretty detailed application notes covering that topic. I am not sure I understand what you mean by sin look up table? This video does not use a look up table but rather a quick algorithm to calculate individual values.
This couldn't have been uploaded at a better time. Been having some issues with DAC. I was hoping to trigger the DAC1 that will output triangle wave and look for the completed flag and then increment the DAC2 by value of 1. I was hoping to do this continuously in the background without interfering with processor.. most i have managed to do till now is normal mode and circular mode examples by changing the frequency of triggering but i can't yet do that combination without involving processor too much. Any advice would be appreciated
Well, the DAC of the STM32F4xx MCU I was using in this example can actually do triangle wave without any calculation at all - you just need to feed the frequencies. Let me know if you can make that work - if not I could do a short video on it.
@@stm32world actually that sounds awesome.. i'll try that today.. i'm more worried about triggering the 2nd dac after the completion of the triangule wave.. i'm hoping that i can stop the wave generation somehow with the complete callback and then switching to generation of it again once the 2nd dac is incremented? i'm not sure, i'll give it a go... also i'll record a video of what i'm trying to do. i'm sure you'll love it..
@@stm32world I tried but am unable to work with dma interrupts specifically i'm not sure how to look for interrupt when dac is finished outputting a triangle wave. Also i'm trying to start the triangle wave through built in settings but i'ts not working.. i would appreciate it if you could create a video on how how to enable and look out for transfercomplete interrupts and do some work in the callback.
@@capistor1 I am not sure I understand what it is you want to achieve. If you look at my DAC example I calculate a sine wave. Nothing would prevent you from doing a triangle wave instead - in fact the math is simpler. Then you can trigger whatever you want in that callback once the wave is completed. I can have a look at the triangle generation later, there's quite a lot about it in the reference manual. But right now I am preparing some I2C videos and I need to get them out of the way first ;)
@@capistor1 you might want to have a look at AN3126 here: www.st.com/resource/en/application_note/an3126-audio-and-waveform-generation-using-the-dac-in-stm32-products-stmicroelectronics.pdf
Thank you! Very useful, even for a newcomer!
Well, they (the videos) are meant to be useful for newcomers but will get more advanced as we move along ;) I appreciate the comment.
Instead of double defining things like SAMPLE_FREQ, you can create "User Constants" in CubeMX, assign a value there and then use that constant in both generated initialization code as well as any custom code. Those "User Constants" show up (IIRC) as #defines in main.h
I did that in the last video #14. In this case however, it is a bit more complicated. I guess I _could_ calculate the value from the prescaler and counter values of the timer. But put that down as pure laziness ;)
Thx. I wander if callbacks could be inlined the same way. HAL_ADC_ConvCpltCallback()
Well, IF you ask yourself a question like that, I reckon I have done a pretty good job ;) THAT's the primary purpose of these videos. Now, go ahead and try that and please let me and everybody else know ;) It's a good question.
I just quickly tried with the dac and it made no difference. Need to dig into this a bit further.
Shouldn't aggressive compiler optimization setting also do this?
That would almost be another video. Try it yourself - the Debug optimization is the fastests - always. -O1 -O2 and even the one that should be the fastests are all slower. I have NOT figured out why and I guess the only way is to analyze the resulting assembler code.
Hi!
Hi
Somewhat interesting discovery.
Yeah
Would be wonderful to see more comments on these videos.
Yeah
Would be wonderful to see more comments on these videos.
Would be wonderful to see more comments on these videos.
Would be wonderful to see more comments on these videos.
Would be wonderful to see more comments on these videos.