

gc {base}                                    R Documentation

_G_a_r_b_a_g_e _C_o_l_l_e_c_t_i_o_n

_D_e_s_c_r_i_p_t_i_o_n_:

     A call of `gc' causes a garbage collection to take
     place.  `gcinfo' sets a flag so that automatic collec-
     tion is either silent (`verbose=FALSE') or prints mem-
     ory use statistics (`verbose=TRUE').

_U_s_a_g_e_:

     gc(verbose = .Options$verbose)
     gcinfo(verbose)

_A_r_g_u_m_e_n_t_s_:

 verbose: logical; if `TRUE', the garbage collection prints
          statistics about cons cells [in Bytes] and the
          vector heap [in KBytes].

_D_e_t_a_i_l_s_:

     A call of `gc' causes a garbage collection to take
     place.  This takes place automagically without user
     intervention, and the primary purpose of calling `gc'
     is for the report on memory usage.

_V_a_l_u_e_:

     `gc' returns a 2*3 matrix with rows `"Ncells"' (cons
     cells, usually 20 bytes each on 32-bit systems, 36
     bytes each on 64-bit systems) and `"Vcells"' (vector
     cells, 8 bytes each), and columns `"free"', `"total"'
     and `"(Mb)"' (rounded up to the next 0.1Mb).

     `gcinfo' returns the previous value of the flag.

_S_e_e _A_l_s_o_:

     `Memory' on R's memory management  and `gctorture' if
     you are an R hacker.

_E_x_a_m_p_l_e_s_:

     gc() #- do it now
     gcinfo(TRUE) #-- in the future, show when R does it
     x <- integer(0); for(i in 1:18) x <- c(x,i,x)
     gcinfo(verbose = FALSE)#-- don't show it anymore

     ( rgc <- gc(TRUE) )
     (100*rgc[,"free"])%/% rgc[,"total"] # the percentages
     rgc[2,"free"]/ (1024 / 8) # free vector heap in K bytes

