Grid is mainly used for test exeuction on multiple browsers in parallel and to do load balancing of the same.
You can execute tests without grid as well, but you will have to start FirefoxDriver or ChromeDriver or respective browser driver instead of RemoteWebDriver. So browser will be initiated on the machine where your tests are executing.
Depending on your system memory you can set thread count. Also, your local system has to have good memory and processing power for smooth execution of your tests.
Apart from setting up the grid, you can even use paid services like SauceLabs and BrowserStack to execute your tests on cloud. You will be paying for what you use.
Hope that helps!