Setting Benchmark Points
If you want to measure the time taken to execute a set of lines or memory usage, you can calculate it by using Benchmarking points in CodeIgniter. There is a separate “Benchmarking” class for this purpose in CodeIgniter.
This class is loaded automatically; you do not have to load it. It can be used anywhere in your controller, view, and model classes. All you have to do is to mark a start point and end point and then execute the elapsed_time() function between these two marked points and you can get the time it took to execute that code as shown below.
<?php 
   $this->benchmark->mark('code_start');
  
   // Some code happens here  
   $this->benchmark->mark('code_end');
  
   echo $this->benchmark->elapsed_time('code_start', 'code_end'); 
?>
To display the memory usage, use the function memory_usage() as shown in the following code.
<?php 
   echo $this->benchmark->memory_usage(); 
?>
Example
Create a controller called Profiler_controller.php and save it in application/controller/Profiler_controller.php
<?php 
   class Profiler_controller extends CI_Controller {
  
      public function index() {
	
         //enable profiler
         $this->output->enable_profiler(TRUE); 
         $this->load->view('test'); 
      } 
  
      public function disable() {
	
         //disable profiler 
         $this->output->enable_profiler(FALSE); 
         $this->load->view('test'); 
      }
		
   } 
?>  
Create a view file called test.php and save it at application/views/test.php
<!DOCTYPE html> 
<html lang = "en">
 
   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter View Example</title> 
   </head>
	
   <body> 
      CodeIgniter View Example 
   </body>
	
</html>
Change the routes.php file at application/config/routes.php to add route for the above controller and add the following line at the end of the file.
$route['profiler'] = "Profiler_controller"; 
$route['profiler/disable'] = "Profiler_controller/disable"
After that, you can type the following URL in the address bar of your browser to execute the example.
http://yoursite.com/index.php/profiler
The above URL will enable the profiler and it will produce an output as shown in the following screenshot.

To disable the profiling, execute the following URL.
http://yoursite.com/index.php/profiler/disable
 
   
    
 
  
  
  
  
  
 