1
00:00:00,060 --> 00:00:05,460
So let us start building our application rate, so if you go to a boot support package, the recommended

2
00:00:05,460 --> 00:00:08,520
driver for any time HDMI CD, right?

3
00:00:08,520 --> 00:00:13,590
So that is the first driver file that giggling in our mean application, right?

4
00:00:13,590 --> 00:00:19,430
So I should include Dan Hicks tmr CD, right?

5
00:00:19,530 --> 00:00:19,700
Right.

6
00:00:20,370 --> 00:00:25,350
Then all the hardware login information will be in the experimental stage.

7
00:00:25,770 --> 00:00:31,050
OK, so this is the second driver file that the required rate, then we proceed to perform an initialization.

8
00:00:31,050 --> 00:00:35,070
So if you just explore the driver we have.

9
00:00:36,380 --> 00:00:41,630
Initialize function present in our code, right, so we will just be declaring the instant structure.

10
00:00:41,900 --> 00:00:43,520
OK, so let me just.

11
00:00:45,080 --> 00:00:50,690
Declare an instance structure will be naming this esteemed, right, then we declare the function which

12
00:00:50,690 --> 00:00:54,230
could be used to perform an initialization of a time or two.

13
00:00:54,530 --> 00:01:00,740
You just need this SDMI in it and then we proceed to call TMI initially today.

14
00:01:00,750 --> 00:01:05,870
So there's just requiring an instant structure and the device A.D. so we go ahead and return the state

15
00:01:05,870 --> 00:01:07,670
as wishes of indicating.

16
00:01:08,710 --> 00:01:10,840
Stewardess saying this would be close to.

17
00:01:11,880 --> 00:01:14,730
Initially, the first argument is an instance structure, right?

18
00:01:15,090 --> 00:01:15,930
So it will be.

19
00:01:17,460 --> 00:01:21,780
And then the second argument that we need to add is the device at any rate.

20
00:01:21,780 --> 00:01:27,600
So we need to explore the experimental fight and there we will be finding dmaa.

21
00:01:28,050 --> 00:01:28,270
Right.

22
00:01:28,370 --> 00:01:33,680
This will lead us to an instance where we have all the information related to the exciting work.

23
00:01:33,690 --> 00:01:35,980
So we'll just be copying this device.

24
00:01:36,330 --> 00:01:38,580
We go ahead and we add it to what you write.

25
00:01:38,970 --> 00:01:41,790
So this completes the process of initialization.

26
00:01:42,060 --> 00:01:45,780
Now we will be verifying whether initial edition is successful or not.

27
00:01:45,960 --> 00:01:46,200
No.

28
00:01:46,200 --> 00:01:51,510
In fact, our miniaturization will be to provide our application rate to.

29
00:01:51,510 --> 00:01:56,550
In that case, you could skip the process of verifying whether initial edition is successful.

30
00:01:57,390 --> 00:02:02,040
So let me just skip the process of checking whether initial is successful or not.

31
00:02:02,370 --> 00:02:06,420
And we will be proceeding to do a configuration of our time, right?

32
00:02:06,420 --> 00:02:06,720
So.

33
00:02:07,920 --> 00:02:13,050
Our first thing that we do with the timer is to forcefully stop it great, so we'll call a stop phone

34
00:02:13,050 --> 00:02:15,240
should this required an instant structure idea.

35
00:02:15,730 --> 00:02:16,220
Yeah, no.

36
00:02:16,230 --> 00:02:23,250
So in the case, when we are utilizing only a single timer there, that Yamashita number will be close

37
00:02:23,250 --> 00:02:24,030
to zero rate.

38
00:02:24,030 --> 00:02:27,120
So we'll be calling pmrc to stop with.

39
00:02:27,120 --> 00:02:32,430
The first argument will be the instance structure and second, when will be the EMI CTA number, which

40
00:02:32,430 --> 00:02:33,690
is seal, right?

41
00:02:34,230 --> 00:02:36,660
Then we will be performing.

42
00:02:37,170 --> 00:02:38,940
Then we will be setting up the mode right.

43
00:02:38,940 --> 00:02:42,480
So let's assume that we want to operate our timer in adult mode.

44
00:02:42,510 --> 00:02:45,000
OK, so first we'll be reading an existing option.

45
00:02:45,000 --> 00:02:50,160
So we have the function referred to as a gate option that will retain the existing option that we have

46
00:02:50,160 --> 00:02:51,850
in for any excitement.

47
00:02:52,140 --> 00:02:53,790
Again, this requires you that you do.

48
00:02:53,790 --> 00:02:55,590
So really just be calling this.

49
00:02:56,790 --> 00:02:57,720
OK, you really do.

50
00:02:58,110 --> 00:03:00,820
Let it just got a name, though, very well as option.

51
00:03:00,840 --> 00:03:02,130
OK, call this function.

52
00:03:02,490 --> 00:03:06,840
This required first argument as an instance structure and the TMI CGI number two.

53
00:03:06,840 --> 00:03:13,110
Once we have an existing option, we'll give, we'll be updating the option with an option that we want

54
00:03:13,110 --> 00:03:14,970
the same great option or with.

55
00:03:16,180 --> 00:03:22,020
Now, if you go ahead and look for the different options that we have over here, so we want to just

56
00:03:22,030 --> 00:03:23,440
operate the.

57
00:03:24,540 --> 00:03:29,100
Timer in and down, right, so we'll just be copying this don't count option, OK?

58
00:03:29,400 --> 00:03:31,050
And we'll be adding your door here.

59
00:03:31,130 --> 00:03:31,350
Right.

60
00:03:31,350 --> 00:03:34,710
So this will allow us to use our timer downward.

61
00:03:34,720 --> 00:03:36,720
So once we update our option variable.

62
00:03:37,050 --> 00:03:44,700
Now we call the second option function that help us to set the specific the user's specific option into

63
00:03:44,700 --> 00:03:45,810
the timer.

64
00:03:45,840 --> 00:03:47,100
So let's just call this.

65
00:03:47,850 --> 00:03:53,180
So this arbitrary argument first one is an instant structure of my CTA number and adoption that user

66
00:03:53,200 --> 00:03:54,030
want to say great.

67
00:03:54,480 --> 00:03:58,590
So first argument is an instant structure, which is Steber.

68
00:03:58,590 --> 00:04:04,500
The second argument is that the MCP a number and the last argument will be the option that we want the

69
00:04:04,500 --> 00:04:05,080
same right?

70
00:04:05,400 --> 00:04:06,000
So once we.

71
00:04:07,040 --> 00:04:12,800
Correctly set up with the option, we need to load our timer such that be able to calculate the timer

72
00:04:12,800 --> 00:04:17,810
function is consuming, and we will be assuming here that the delay that our function, which we are

73
00:04:17,810 --> 00:04:22,690
profiling will always consume the time less than 15 seconds.

74
00:04:22,970 --> 00:04:29,540
So this you need to make sure whenever you load your timer with the specific count that you load it

75
00:04:29,870 --> 00:04:30,530
with the value.

76
00:04:30,530 --> 00:04:38,540
So set it exceed the specific delay that you are expecting out of an application rate or a function

77
00:04:38,540 --> 00:04:39,480
that you are profiling.

78
00:04:39,500 --> 00:04:43,130
So here we have a set reset value function.

79
00:04:43,160 --> 00:04:48,910
OK, so this allows us to load our counter register to provide this specific right.

80
00:04:49,190 --> 00:04:53,000
So we go ahead and first declared a new 32 variable rate.

81
00:04:53,000 --> 00:04:56,000
So the way you do because this.

82
00:04:57,180 --> 00:05:04,200
Except the value in a utility to format, right, so we already know that we configure our timer to

83
00:05:04,200 --> 00:05:05,760
operate at 100 meters away.

84
00:05:05,760 --> 00:05:11,390
So if clock frequency that we have used is 100 meters, so you 32 count.

85
00:05:12,090 --> 00:05:18,870
OK, so first we need to add and then we got to adhere so to zero one two three one two three.

86
00:05:19,130 --> 00:05:20,370
So this is a hundred megahertz.

87
00:05:20,940 --> 00:05:26,440
Then to achieve a delay of 15 seconds, we just need to multiply by the factor of 50.

88
00:05:26,570 --> 00:05:26,730
Right.

89
00:05:26,730 --> 00:05:32,850
So we call the set reset value function, though it is required for us to document SDMI.

90
00:05:33,210 --> 00:05:38,140
The second document is still EMR, CTA number and the account value that we want to load.

91
00:05:38,160 --> 00:05:39,450
So this should be covered.

92
00:05:39,450 --> 00:05:46,020
So this will allow us to chinda a delay of 15 seconds until we already configured our timer to operate

93
00:05:46,020 --> 00:05:47,020
on then down.

94
00:05:47,190 --> 00:05:47,540
Great.

95
00:05:47,550 --> 00:05:48,660
Then we proceed.

96
00:05:49,020 --> 00:05:52,140
And let me just call this reset function.

97
00:05:52,140 --> 00:05:52,770
All right.

98
00:05:52,770 --> 00:05:55,380
So we go ahead and call reset.

99
00:05:55,620 --> 00:05:57,960
So this complete the process of configuration.

100
00:05:57,960 --> 00:05:58,350
So what?

101
00:05:59,040 --> 00:06:02,880
What are all things that we did over here so we forcefully stop our timer?

102
00:06:03,270 --> 00:06:04,980
We choose this specific option.

103
00:06:05,010 --> 00:06:08,170
So here we do not want interrupt or not only learn more.

104
00:06:08,400 --> 00:06:14,320
We simply want our time to operate in a normal OK, so we read an existing option that you have for

105
00:06:14,320 --> 00:06:16,770
any timer and then we update an option, right?

106
00:06:17,830 --> 00:06:23,590
We calculated or delay, depending on the time that we are targeting for an application that we are

107
00:06:23,590 --> 00:06:24,400
profiling, right?

108
00:06:24,760 --> 00:06:29,650
So here we are assuming that our function would be taking more than 15 seconds.

109
00:06:29,890 --> 00:06:36,280
So we loaded our timer so that the able to calculate the delay of at least 15 seconds, right?

110
00:06:36,820 --> 00:06:42,310
Then we load that well into the counter and then we are revisiting our time.

111
00:06:42,550 --> 00:06:46,970
So these are the series of steps that you need to perform while initializing your time.

112
00:06:46,990 --> 00:06:53,230
Right now, let's assume that the application that we are profiling is a simple, deliberate death rate.

113
00:06:54,450 --> 00:07:02,460
And this is sending a strong profile on to a council race, so this is what we wish to prove.

114
00:07:02,770 --> 00:07:03,030
Great.

115
00:07:04,190 --> 00:07:09,590
So here we have an application which you want to provide, so just about an application, what we going

116
00:07:09,810 --> 00:07:10,280
with?

117
00:07:10,760 --> 00:07:11,090
OK.

118
00:07:11,360 --> 00:07:14,300
We will be going ahead and we'll be starting our crime.

119
00:07:14,670 --> 00:07:15,050
So.

120
00:07:16,050 --> 00:07:19,140
We call the start function, this required two arguments.

121
00:07:19,140 --> 00:07:25,320
First one is the team, which is against the structure and diversity and no right?

122
00:07:25,680 --> 00:07:31,170
So once you start your timer first, you sample the value at that instant, so let it just call the

123
00:07:31,170 --> 00:07:31,750
gate value.

124
00:07:31,770 --> 00:07:33,730
This return the current value of our time.

125
00:07:33,990 --> 00:07:35,310
So this return you that you do.

126
00:07:35,580 --> 00:07:42,420
So we declared what variable utility this will be storing the clock tick that we have at the start of

127
00:07:42,420 --> 00:07:43,790
our application rate.

128
00:07:43,800 --> 00:07:45,100
So we call get value.

129
00:07:45,150 --> 00:07:46,530
This again required two arguments.

130
00:07:46,530 --> 00:07:51,180
The first one is that here my second one is the DMA number, right?

131
00:07:51,390 --> 00:07:53,580
Then we allow an application to complete.

132
00:07:53,700 --> 00:07:58,440
OK, and then we declared one more variable, which we refer to as an end.

133
00:07:58,770 --> 00:07:59,090
OK.

134
00:07:59,280 --> 00:08:02,730
And that will be sampling the value of.

135
00:08:04,130 --> 00:08:10,130
The counters that we have after we finish the execution of our application right now, you know, that

136
00:08:10,130 --> 00:08:16,110
I counter is going in a downward election rate the stock will have at higher value.

137
00:08:16,110 --> 00:08:17,810
Let's back to it right now.

138
00:08:17,810 --> 00:08:22,910
Let me just try to bring the number of clock ticks that we are consuming data with.

139
00:08:22,910 --> 00:08:26,510
Each clock they are counted will be discriminated by one, right?

140
00:08:26,540 --> 00:08:27,110
This makes sense.

141
00:08:27,140 --> 00:08:28,730
This is how our founder works.

142
00:08:29,100 --> 00:08:34,910
OK, so if we compute the difference between starting in, that basically gives us.

143
00:08:35,970 --> 00:08:41,970
The number of topics that we are consuming to execute this application, right, and that we will be

144
00:08:41,970 --> 00:08:50,550
utilizing to compute the delay rate so the number of OK clock ticks that we are consuming.

145
00:08:50,590 --> 00:08:56,730
OK, let me just bring this in and potentially duty and the value that we want printed.

146
00:08:56,740 --> 00:08:58,410
Start my nursing, right?

147
00:08:58,470 --> 00:09:03,480
If you upgrade your account setting it up well, then in that case then will have an higher value ask

148
00:09:03,480 --> 00:09:04,380
about the stock, right?

149
00:09:04,380 --> 00:09:06,750
So there you need to perform and minus stock, right?

150
00:09:07,530 --> 00:09:14,130
Once you have the number of clock ticks that you are consuming now will do some calculation, right?

151
00:09:14,130 --> 00:09:17,560
So we know that Tariq sativa operates at 100 megahertz, right?

152
00:09:17,580 --> 00:09:19,980
So this basically is equal to 10 industry week.

153
00:09:20,700 --> 00:09:25,610
If you take an inverse of it's a single clocked, it cost us around in this two minus trade.

154
00:09:25,950 --> 00:09:31,380
So if you want to get an equal value in a microsecond, right, so if you just separate, then there's

155
00:09:31,380 --> 00:09:34,230
two minus six and then this minus two, which we did over here.

156
00:09:34,710 --> 00:09:38,490
So then this two minus six will result in two microsecond antennas.

157
00:09:38,490 --> 00:09:41,190
Two minus two will give 0.2 to one, right.

158
00:09:41,400 --> 00:09:44,670
So as soon as we have a number of blocked, it's OK.

159
00:09:44,910 --> 00:09:48,300
If you want to get the value in a microsecond, you just need to multiply by.

160
00:09:48,300 --> 00:09:52,590
The factor of zero point zero zero point zero one is a floating point number.

161
00:09:52,800 --> 00:09:54,630
So we need to proceed.

162
00:09:56,000 --> 00:10:02,660
With the printing function, right, that allow us to print the flirting going, no, it so.

163
00:10:03,940 --> 00:10:05,470
Dying in.

164
00:10:06,640 --> 00:10:13,990
Microsecond rate, or you could just be mentioning like this person 0f this is the format specified

165
00:10:13,990 --> 00:10:17,440
that we use when we want to pay the plotting by number.

166
00:10:17,530 --> 00:10:17,860
OK.

167
00:10:18,130 --> 00:10:24,710
And what we need to do is we just need to perform start mining, saying OK.

168
00:10:24,710 --> 00:10:29,860
And the multiplication factor that we need to add is 0.08, right?

169
00:10:29,860 --> 00:10:32,440
So this is how we will be getting.

170
00:10:33,930 --> 00:10:34,680
The value.

171
00:10:35,930 --> 00:10:41,570
In my view, a second rate, so this is the time our application consuming OK in a microsecond if you

172
00:10:41,570 --> 00:10:44,570
want to bring the value system in a nanosecond rate.

173
00:10:44,960 --> 00:10:50,780
So for a nanosecond, we just need to multiply by 10, and that will basically give us a decision as

174
00:10:50,780 --> 00:10:54,950
to mine so it will be converted into this two minus nine rate.

175
00:10:55,250 --> 00:11:00,560
And this basically signifies that Dennis two minus nine, will give us a nanosecond and the 10 will

176
00:11:00,560 --> 00:11:02,030
be as it is over here, right?

177
00:11:02,300 --> 00:11:07,870
So whenever you want to get the value in nanosecond, you just need to multiply by the factor of 10.

178
00:11:07,880 --> 00:11:10,080
Right now, this is not a floating point number.

179
00:11:10,100 --> 00:11:14,360
So we could proceed with the XL print rate, so let it just go ahead.

180
00:11:15,640 --> 00:11:17,370
And add to bring the.

181
00:11:18,710 --> 00:11:18,980
OK.

182
00:11:19,370 --> 00:11:22,250
And here we will be spending time in.

183
00:11:23,400 --> 00:11:29,490
In a nanosecond rate here, students are no, it's not flirting going, no.

184
00:11:29,790 --> 00:11:32,760
It is a fixed point number, so we could just use percieved zero.

185
00:11:33,480 --> 00:11:33,810
OK.

186
00:11:34,020 --> 00:11:38,280
And here the value that we're going to apprentice start minus st.

187
00:11:38,640 --> 00:11:41,520
OK, and this should be multiplied by the factor of 10.

188
00:11:41,820 --> 00:11:43,890
So this is how we profile our application.

189
00:11:43,900 --> 00:11:47,010
So first, we are calculating the number of clicks.

190
00:11:47,010 --> 00:11:51,060
OK, that should be a start minus it in a case of our download.

191
00:11:53,070 --> 00:11:59,490
OK, and then to calculate the value in an microsecond, we just need to multiply by the factor of 0.01

192
00:11:59,670 --> 00:12:02,370
when you calculate the value in in a nanosecond.

193
00:12:02,400 --> 00:12:04,590
We just need to multiply by the factor of that, right?

194
00:12:04,590 --> 00:12:05,910
So this completes our application.

195
00:12:05,910 --> 00:12:09,210
Let it just proceed to be our application project.

196
00:12:10,600 --> 00:12:15,870
So once our buildings finished, we will be selecting our application project Debug as launch on hardware,

197
00:12:15,940 --> 00:12:16,230
right?

198
00:12:17,580 --> 00:12:19,510
So this will automatically programmers.

199
00:12:20,930 --> 00:12:26,810
So let us try to connect and why this terminal to conflict where we have our hook in the border that

200
00:12:26,810 --> 00:12:28,730
which we would be operating is one one five.

201
00:12:28,970 --> 00:12:29,240
Right?

202
00:12:29,540 --> 00:12:32,440
Only thing that we need to do is to click on resume, but right.

203
00:12:34,200 --> 00:12:36,750
So here we are just calling an inexplicable.

204
00:12:36,780 --> 00:12:42,030
We haven't called the function that perform initialization of a timer and hence we are not seeing any

205
00:12:42,030 --> 00:12:42,570
value for it.

206
00:12:42,930 --> 00:12:49,580
So let me just go ahead and call Primary Nic after we perform the initial addition for and you are very

207
00:12:49,590 --> 00:12:56,790
fit and let's just again rebuild our application and then we need to start afresh DBA configuration

208
00:12:56,790 --> 00:13:00,480
right to select our DBA configuration and click on relaunch.

209
00:13:02,220 --> 00:13:04,780
So now we proceed and click on resume button, right?

210
00:13:05,130 --> 00:13:09,060
So you could clearly see the number of clock ticks that we are consuming is around two.

211
00:13:09,060 --> 00:13:09,940
Forty six.

212
00:13:09,990 --> 00:13:10,350
OK.

213
00:13:10,620 --> 00:13:16,590
And the time that we are getting in a microsecond is two point forty six, whereas time that we are

214
00:13:16,590 --> 00:13:19,460
getting in a nanosecond is two four six zero.

215
00:13:19,490 --> 00:13:19,650
Right.

216
00:13:19,710 --> 00:13:25,140
So this is how we perform a profiling of an application utilizing any set time where it.
