Для меня каждая модель в любом случае представляет одну таблицу. (Я думаю, что большинство людей делают это таким образом). Если необходимо изменить данные в нескольких таблицах, я должен сделать вызов для нескольких моделей.
Я думаю, что лучше использовать модели так, как они предназначены (а не вообще). Когда я впервые использовал codeigniter, я не использовал их, потому что считал, что активная запись (или, по крайней мере, ее реализация codeigniter) упрощает работу с базой данных. Когда я понял, как можно использовать модели, я никогда не оглядывался назад.
Я также могу добавить, что это действительно зависит от размера приложения. Возможно, таблиц не так много, и вам нужна максимальная производительность; это может быть вполне нормально сделать с вызовами активной записи с вашего контроллера.
В конце концов, я думаю, что повторное использование и ремонтопригодность являются наиболее важными.
Возможно, вы также сможете использовать свои модели для построения запросов, а не для их выполнения, а затем выполнять их полностью (это то место, где вы думаете, что потеряете производительность?)