Abstract-This paper investigates the subcarrier allocation problem for uplink transmissions in a multi-cell network, where device-to-device communications are enabled. We focus on maximizing the aggregate transmission rate in the system accounting for both inter-and intra-cell interference. This problem is computationally hard due to its nonconvex and combinatorial nature. However, we show that it can be described by a potential game, and thus a Nash equilibrium can be found using iterative algorithms based on best/better response dynamics. In particular, we propose a simple iterative algorithm with limited signaling that is guaranteed to converge to an equilibrium point, corresponding to a local maximum of the potential function. Using extensive simulations, we show that the algorithm converges quickly also for dense networks, and that the distance to the true optimum is often small, at least for the small-sized networks for which we were able to compute the true optimum.